在C語言中,函數的參數傳遞機制主要有兩種:傳值調用和傳引用調用。
void swap(int a, int b) {
int temp = a;
a = b;
b = temp;
}
int main() {
int x = 10, y = 20;
swap(x, y);
printf("x = %d, y = %d\n", x, y); // 輸出結果為:x = 10, y = 20
return 0;
}
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int x = 10, y = 20;
swap(&x, &y);
printf("x = %d, y = %d\n", x, y); // 輸出結果為:x = 20, y = 10
return 0;
}
總之,在C語言中,函數參數傳遞時都是通過值傳遞的,但是對于指針類型的參數,可以通過傳遞地址來實現傳引用調用。