函數內聲明的變量為局部變量,生命周期隨函數調用結束而終止。
#include <iostream>
using namespace std;
void swap(int x, int y) {
cout << "swap前: x=" << x << ", y=" << y << endl;
int z = x; x = y; y = z;
cout << "swap後: x=" << x << ", y=" << y << endl;
}
int main() {
int x = 3, y = 4;
cout << "main調用前: x=" << x << ", y=" << y << endl;
swap(x, y);
cout << "main調用後: x=" << x << ", y=" << y << endl;
return 0;
}

main調用前: x=3, y=4 swap前: x=3, y=4 swap後: x=4, y=3 main調用後: x=3, y=4 // 實參未變
值傳遞時形參是實參的副本,函數內修改不影響外部。若需交換,須使用指針或引用傳遞。