我分不清*parr[1]是(*parr)[1]还是*(parr[1]),最后验算了一下是*(parr[1])。c语言
手册上只说[]的优先级大于*,我理解的是[]里面大,这种在侧面的也遵循这个规律么?
当然可以用括号来规避这种拿不准的风险,纯学习性的技术讨论。
int arr[3][3]={1,2,3,4,5,6,7,8,9};
int* parr[3]={arr[0],arr[1],arr[2]};
printf("*parr[1]=%d\n",*parr[1]);
printf("(*parr)[1]=%d\n",(*parr)[1]);
printf("*(parr[1])=%d\n",*(parr[1]));
--
FROM 111.193.230.*