写了一个简单的例子,代码中数组a赋值给指针state后,为什么a数组中的数值会保存指针的数值一直为1?
对指针state进行赋值会把数值给到数组a中?有点迷糊了。 数组a和指针state的地址共用了?
#include <stdio.h>
#include <stdlib.h>
static int a[16] = {0};
int main()
{
while(1)
{
sleep(3);
int *state = NULL;
state = a;
int tmp = state[1];
if(tmp == 0)
{
printf("state = %d\n", tmp);
state[1] = 1;
}
if(tmp == 1)
{
printf("state = %d\n", tmp);
}
}
return 0;
}