**:
#includeusing namespace std;
void swap1(int a,int b)
void swap2(int *pa,int *pb)
void swap3(int *pa,int *pb)
int main()
{ int a = 2014;
int b = 2015;
int *pa = &a;
int *pb = &b;
swap1(*pa,*pb);
cout執行結果:
分析:
第一次呼叫swap1函式時實參為 *pa,*pb ,形參為 a,b ,所以 a,b 的值只在呼叫函式中交換,並沒有影響
主函式中的 *pa,*pb,所以輸出結果仍為 a=2014; b=2015。
第二次呼叫swap1函式時實參為 a,b ,形參也為 a,b ,但是同樣只是在呼叫函式中交換,沒有改變 *pa,
*pb,所以輸出結果仍為 a=2014; b=2015。
第三次呼叫swap2函式時實參為 pa,pb ,形參為 *pa,*pb,交換了指標所指的值,所以輸出結果為
a=2015; b=2014。
第四次呼叫swap2函式時實參為 &a,&b,形參為 *pa,*pb,可以交換,由於上次的結果為 a=2015; b=2014,
所以交換後為 a=2014; b=2015。
第五次呼叫swap2函式時實參為 pa,pb,形參為 *pa,*pb,相當於用新的指標指向原來的指標,所以交換的
時候只交換了新的指標,並沒有改變原來指標所指的值,所以結果為a=2014; b=2015。
c 呼叫函式
建立c 函式時,會定義函式做什麼,然後通過呼叫函式來完成已定義的任務 當程式呼叫函式時,程式控制權會轉移給被呼叫的函式,被呼叫的函式執行已定義的任務,當函式的返回語句被執行時,或到達函式的結束括號時,會把程式控制權還給主程式 呼叫函式時,傳遞所需引數,如果函式返回乙個值,則可以儲存返回值 例如 in...
c 呼叫函式
main就是乙個函式,它是c 程式的主函式。乙個c 程式可以由乙個主函式和若干子函式組成。主函式是程式執行的開始點。由主函式呼叫子函式,子函式還可以再呼叫其它子函式。呼叫其它函式的函式稱為主調函式。被其他函式呼叫的函式稱為被調函式。乙個函式很可能既呼叫別的函式又被其它函式呼叫。函式呼叫的形式 型別說...
C 呼叫C函式
前言 以前見到extern c 這樣的語句,只是簡單地知道跟外部鏈結有關,但是沒有深刻理解它的意思。首先,為什麼要使用extern c 修飾符?c 呼叫其它語言的函式,由於編譯器生成函式的機制不一樣,所以需要經過特殊處理,才可以呼叫。呼叫c語言的函式,需要在函式宣告的地方語句extern c 如果不...