我想了解一些指針的基本原理。有人告訴我,賦值給指針變量會改變實際的變量值。真的嗎?我寫了一段代碼,並得到這個:C中的指針,簡單的疑惑
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x=5;
int *address_of_x = &x;
int y = *address_of_x;
*address_of_x = 9;
printf("The value of x is: %d\n", x);
printf("The X is at: %p\n", &address_of_x);
printf("value of y = %d\n", y);
return 0;
}
,並得到這樣的輸出:
The value of x is: 9
The X is at: 0028FF04
value of y = 5
爲什麼「Y」的值停留5?那是因爲命令的順序嗎?
指針包含一個地址下一次。地址指向房屋。您可以複製地址多個地點,並且不會移動房子,並且如果您擦除不破壞房屋的地址。 –
(但是當你使用'*'(在參考中,而不是聲明中)調用木匠來複制房屋或修改房屋看起來像另一個房子。) –
在大多數講英語的世界裏,「懷疑」不是「問題」的同義詞; 「懷疑」一詞意味着不相信。 –