二维数组的一个小问题
int arr[2][3]={(5, 6, 7), (1, 2, 3)};如果里面是小括号形式的话,表示什么意思?
#include <stdio.h> int a[2][3] = {{5, 6, 7}, {1, 2, 3}}; int main(int argc, char *argv[]) { for(int i = 0; i < 2; i++) { for(int j = 0; j < 3; j++) { printf("%d ", a[i][j]); } } puts(""); int *p1 = &a[0][0]; for(int i = 0; i < 6; i++) printf("%d ", *p1++); puts(""); int *p2[2]; for(int i = 0; i < 2; i++) { *(p2 + i) = a[i]; for(int j = 0; j < 3; j++) { printf("%d ", *(*(p2 + i) + j)); } } puts(""); int (*p3)[3]; for(int i = 0; i < 2; i++) { p3 = a + i; for(int j = 0; j < 3; j++) { printf("%d ", *(*p3 + j)); } } puts(""); return 0; }