C题目请教,多谢!
看了个程序,有点不明白,请教!
#include <stdio.h>
static int i = 0;//此处不能为0
void f()
{
static int i = 28;
}
int main()
{
int* p = &i;
printf("sizeof(int)=%d\n",sizeof(int));
++p;
printf("*p=%d\n",*p);
return 0;
}
1)首先static int i = 0;//此处不能为0,为什么不能为零?
2)为什么输出的是局部静态变量的值?为什么指针p加"1"后指向了局部静态变量i?谢谢