C语言某经典书,书上关于指针与数组上这样的描述,是不是有问题的?
书上这句话,a和b是指向同一个数组,这不是应该指向数组第一个元素吗?数组名是指针没错,但是它是指向第一个元素的啊,如果按上面写指向数组,那么a+1和b+1 最后都是指向数组之前的那个空间的地址了,但这显然不对啊。
C语言某经典书,书上关于指针与数组上这样的描述,是不是有问题的?
书上这句话,a和b是指向同一个数组,这不是应该指向数组第一个元素吗?数组名是指针没错,但是它是指向第一个元素的啊,如果按上面写指向数组,那么a+1和b+1 最后都是指向数组之前的那个空间的地址了,但这显然不对啊。
看了看你发的消息,你说的很有道理,那个教程确实不严谨,应该说a指向了b数组的第一个元素。因为a本来就是int类型的指针,而不是int[3]类型的指针。但是a和b确实指向同一个位置,因为b是类似于int*
的一个类型,而&b才是指向整个数组