指针使用前需要先行定义变量。就像下面这样
#include<stdio,h>
int main ()
{
int number =20;
int *pointer=&number;
int a =0;
a=*pointer +5;
result 0;
}
很明显这个简单的程序运行的结果是25;
那么问题来了,假如我在指针被赋值变量地址之后对变量进行新的赋值会发生什么情况呢?
程序如下:
#include<stdio,h>
int main ()
{
int number =20;
int *pointer=&number;
int a =0;
number=10;
a=*pointer +5;
result 0;
}
最后的运行结果却是15。
可以看出当使用已声明变量对指针进行初始化后,改变变量的值,指针的值会随着变量改变。
同样的即是未在初始化的时候给指针赋值,在之后赋值的结果是一样的: