C_易水寒

海角C语言,被遗忘的凄美故事!剜骨放血,只有最深痛的记忆留在中枢神经!

导航

2011年11月5日 #

一个C语言问题: #define a int[10]与typedef int a[10]—哪位友友帮忙分析一下?

摘要: 1),#define a int[10] A),a[10] a[10]; B),a[10] a; C),int a[10]; D),int a; E),a b[10]; F),a b; G),a* b[10]; H),a* b; 2), typedef int a[10]; A),a[10] a[10]; B),a[10] a; C),int a[10]; D),int a; E),a b[10]; F),a b; G),a* b[10]; H),a* b; 3),#define a int*[10] A),a[10] a[10]; B),a[10] a; C),int a[10]; D).. 阅读全文

posted @ 2011-11-05 23:50 C_易水寒 阅读(2357) 评论(0) 推荐(0) 编辑

我对一个C程序的分析(如果哪位友友有不同意见欢迎评论)

摘要: 以下面程序分析入手:int main(){ int a[5]={1,2,3,4,5}; int *ptr1=(int*)(&a+1); int *ptr2=(int*)((int)a+1); printf("%x,%x",ptr1[-1],ptr2); return 0;}下面用两种方法分析,第一,用理论分析;第二,在VC++6.0上调试,看结果。第一,理论分析:先看&a+1:对数组a的首地址,该地址的值加上sizeof(a)的值,即&a+5*sizeof(int),即下一个内存快的地址,也就是数组所在这块内存后面的那块的首地址(这个地址我们不知道是 阅读全文

posted @ 2011-11-05 20:01 C_易水寒 阅读(494) 评论(2) 推荐(0) 编辑

困扰我的C语言问题?

摘要: int main(){int a[5]={1,2,3,4,5}; //a[5]=1245120 a的首地址是0x0012ff6c ,ptr1=0xcccccccc, &a+1=0x0012ff6dint *ptr1=(int*)(&a+1);int *ptr2=(int*)((int)a+1);printf("%x,%x",ptr1[-1],ptr2);return 0;}上面的是一个很简单的C语言程序,但是我在调试时遇到了很多问题(主要问题是关于数组的(地址和值)),哪位友友对这个程序感兴趣的话帮忙分析一下呗? 阅读全文

posted @ 2011-11-05 00:57 C_易水寒 阅读(959) 评论(7) 推荐(0) 编辑