我试图了解指针的一些基本原理。有人告诉我,给指针变量赋值会改变实际的变量值。真的吗?我写了一段代码,得到了这个:
#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?那是因为命令的顺序吗?