int main(void)
{
char aChar='a';
char *pChar=&aChar;
char bChar='b';
return 0;
}
|
int main(void) { //注释部分是int类型测试 // int aInt=0x22FF54; // int *p=&aInt; // int **pp=&p; // pp+=1; // return 0; char aChar='a'; char *pChar=&aChar; char **ppChar=&pChar; ppChar+=1; return 0; }
|
编译程序,然后通过debug分析其中各变量的值,你会很有收获的
我使用的是eclipse for c/c++版,由于上传图片很麻烦,请下载附件word分析文档
另外,通过此次试验,使我产生了一个疑惑,那就是变量的声明次序有可能产生内存的浪费问题:
比如,如下代码:
int main(void)
{
char aChar='a';
char bChar='b';
char *pChar=&aChar;
return 0;
}
和代码:
int main(void)
{
char aChar='a';
char *pChar=&aChar;
char bChar='b';//注意
return 0;
}
本文探讨了C语言中指针的基本用法及其在内存管理中的应用,包括指针的声明、赋值以及如何通过指针操作内存。此外,还讨论了变量声明顺序可能带来的内存分配考虑。
1764

被折叠的 条评论
为什么被折叠?



