首页 > 代码库 > 某笔试题记录

某笔试题记录

今天笔试C++遇到的几道题,感觉还是有些难度的

 1 int main()
 2 {
 3     int a[4][4] = {
 4         {1,2,3,4},
 5         {50,60,70,80},
 6         {900,1000,1100,1200},
 7         { 13000, 14000, 15000, 16000 }
 8     };
 9 
10     int(*p1)[4] = a;
11     int(*p2)[4] = &a[0];
12     int *p3 = &a[0][0];
13 
14     printf("%d %d %d %d", *(*(a+1)-1),*(*(p1+3)-2)+1,*(*(p2-1)+18)+5,*(p3+sizeof(p1)-3));
15 
16     system("pause");
17     return 0;
18 }

 答案是4 1101 15005 2

 前两个比较好理解。对于第三个,p2-1相当于跳了一个一维数组(元素为随机值),再加18个元素就加到了15000位。

 对于第四个,sizeof(p1)为4,首位元素再加1位。

 

某笔试题记录