标签:a[][] *p
猜猜输出的结果:
#include <stdio.h> int main(int argc, char * argv[]) { int a[3][2] = { (0, 1 ), (2, 3 ), (4, 5 )}; int *p; p = a[0]; printf("%d", p[0]); system("pause"); return 0; }
正确答案是:1
其实这是一道逗号表达式陷阱题,大家可能被数组指针蒙蔽了,看见这个指针指向二维数组,就开始把焦点放在这儿,却忽视了逗号表达式,这也是对二维数组赋值掌握不太熟悉所致,一般表示为
int a[3][2] = { { 0, 1 }, { 2, 3 }, { 4, 5 }};
本文出自 “sunshine225” 博客,请务必保留此出处http://10707460.blog.51cto.com/10697460/1708366
标签:a[][] *p
原文地址:http://10707460.blog.51cto.com/10697460/1708366