例如:
view plainc
view plain#include
char *place_1();
char *place_2(char *);
void main()
{
char a[5]={'a','b','c'};
char *p=a;
printf("sizeof(a) %d\n",sizeof(a));
printf("sizeof(p) %d\n",sizeof(p));
printf("sizeof(place_1()) %d\n\n",sizeof(place_1()));
printf("sizeof(place_2(p)) %d\n",sizeof(place_2(p)));
}
char *place_1()
{
char a[5]={'a','b','c'};
printf("sizeof(a) %d\n",sizeof(a));
return a;
}
char *place_2(char *p)
{
printf("sizeof(p) %d\n",sizeof(p));
return p;
}
运行结果如下:

参考书目:《C程序设计(第三版)》,《C语言深度剖析》