#include <stdio.h>
int main(int argc,char * argv[])
{
int a[3][2]={(0,1),(2,3),(4,5)};
int b[3][2]={{0,1},{2,3},{4,5}};
int *p;
int *q;
p=a[0];
q=b[0];
printf("%d\n",p[0]);
printf("%d\n",q[0]);
}
(gdb) p a
$1 = {{1, 3}, {5, 0}, {0, 0}} ----->逗號表達式將二維數組a 賦值成了 { 1 ,3 ,5 ,0,0,0}
(gdb) p b
$2 = {{0, 1}, {2, 3}, {4, 5}}
(gdb)
執行結果 1 0
平時寫程序幾乎不用逗號表達式竟然沒看懂,還需要用gdb調試一下,鄙視一下自己吧