看c++primer第四章的数组与指针里面有一个实例:int a[4][5]; int (*p)[5] = a;发现没有看懂 按照书上的说话 这是定义一个指向有5个元素的数组的指针 想了一下 发现有点晕没有怎么明白 查了一些资料 对于这样的问题网上给出了这样的解答 p左边的*在这里不是取值运算符,而是一个声明符,它指出p是一个指针。而()括号是不能去掉的,如果去掉了,由于[]运算符优先级比*高,p就会先跟[]结合,这样p就变成了一个指针数组,而不是指向数组的指针 仔细想想还真的是这样 这也解决了我先前在上c语言的时候的问题 当时我就不是很明白 为什么int **p 不能直接赋值a[4][6]. Read More
posted @ 2012-03-02 17:58
Frozenxia
Views(169)
Comments(0)
Diggs(0)

浙公网安备 33010602011771号