0
兩個main()
函數都做同樣的事情,但我被告知使用指針變量很重要。有人可以解釋爲什麼我不能總是隻用&variableName
一直髮送位置?使用指針變量或在原始變量名稱之前使用&符號有什麼區別?
int swap_int(int *i1, int *i2)
{
int t = *i1;
*i1 = *i2;
*i2 = t;
}
int main(void)
{
int v1 = 0;
int v2 = 37;
int *p2 = &v2;
printf("v1 = %d, v2 = %d\n", v1, v2);
swap_int(&v1, p2);
printf("v1 = %d, v2 = %d\n", v1, v2);
return 0;
}
或者,如果你這樣做:
int main(void)
{
int v1 = 0;
int v2 = 37;
printf("v1 = %d, v2 = %d\n", v1, v2);
swap_int(&v1, &v2);
printf("v1 = %d, v2 = %d\n", v1, v2);
return 0;
}
'int x = 4;' - 這與之後使用'x'或'4'之間的區別是相同的。 –