(1):
問題及**:
#include
void myswap(int x, int y)
int main()
int main()
執行結果:
問題及**:
#include
void myswap(int &x, int &y)
int main()
執行結果:
知識總結:
(1)無法交換a、b的值,因為x、y為區域性變數,當呼叫myswap函式時,為x、y、t開闢記憶體空間,但是當呼叫結束時,將這部分記憶體釋放掉。
(2)可以交換a、b的值,因為當呼叫myswap函式時,為*p1和*p2開闢記憶體空間,*p1和*p2指向是a、b的位址的指標,實際交換的是a、b的值
(3)可以交換a、b的值,因為x、y分別是a、b的別名,所以呼叫myswap時沒有為x、y開闢記憶體,x、y分別與a、b共用記憶體,即x=a,y=b。
第二週 C C 語言中函式引數傳遞的三種方式
檔名稱 test.cpp 完成日期 2015年9月7日 版本號 v1.0 輸入描述 兩個整數 程式輸出 交換後的兩個整數 1 傳值 include using namespace std void myswap int x,int y int main 執行結果 傳位址 include using ...
第二週專案1函式引數傳遞的三種方式
all right reserved.檔名稱 函式引數傳遞的三種方式.cpp 完成日期 2015年9月11日 版本號 v1.0 問題描述 編寫能夠交換兩個變數的swap函式的三個版本。程式輸入 待交換的的兩個整數。程式輸出 交換後的結果。1 傳值 includevoid myswap int int...
第二週 專案1 函式引數傳遞的三種方式
檔名稱 1.cpp 作 者 申鵬鵬 完成時間 2016年 9月8日 版 本 號 v1.0 問題描述 編制三個程式,分別呼叫三個版本的交換函式,觀察結果。輸入描述 兩個待交換的整數 程式輸出 交換後得兩個整數 includevoid myswap int x,int y int main includ...