在声明语句short tell[10];中,tell指向数组的首个元素,表示一个2字节内存块的地址,而&tell指向整个数组,表示一个20字节内存块的地址。到目前我是理解的,但后面有几个不理解的地方请大佬们指教:
- 书中说,表达式tell+1会将tell的值增加2,表达式&tell+2会将&tell的值增加20。不理解&tell+2为什么会将&tell的值增加20?&tell不是代表整个数组的地址吗,那&tell+2后&tell的值应该增加40才对啊,如果是&tell+1 其值才会增加20吧?
- 可以把 int * 理解为指向int的指针类型;但 short (*)[20] 该怎么理解?
补充一下楼上的答案
short (*)[20]
就是short [20]
的指针,是一个数组指针