1.函數:程序的最小單位
2.寫一個交換函數ide
swap1(int x, int y) //傳值調用 { int tmp; tmp = x; x = y; y = tmp; } swap2(int* x, int* y) //傳址調用 { int tmp; tmp = *x; *x = *y; *y = tmp; } int main() { int a, b; a = 10; b = 20; swap1(a, b); printf("a=%d, b=%d\n", a, b); //輸出 a=10, b=20 swap2(&a, &b); printf("a=%d, b=%d\n", a, b); //輸出 a=20, b=10 }
//swap1中形參x和y在調用函數時只是實參a和b的一份臨時拷貝,它有本身的地址,故不能改變外部變量a和b的值,達不到交換a和b的做用
//swap2是傳址調用,把a和b變量的地址傳給函數swap2,在swap2函數中操做時直接改變了a和b變量所在地址的值,從而達到交換a和b的值的做用
形參:即自定義函數中括號內須要的參數,它能夠是常量、變量、表達式或函數,但必須是
一個肯定的值,形參在函數調用的時候纔會爲其分配內存,在調用結束後銷燬內存。
實參:即函數中實際的值,如上述函數中a和b就是實參。函數