c++中对于数组int a[9],*p=a,a+1,a++,++a,p+1,p++,++p有什么区别

2025-03-07 01:44:06
推荐回答(2个)
回答1:

a++和++a是错误的,编译都不会过,因为数组名是常指针。只剩下a+1和p+1了,它们在使用上是没有区别,指向了同一个地方,但a是常指针而p是普通指针!

回答2:

都不表示a[1]

a+1表示&a[1]

a++和++a都是非法

p+1和a+1相同

p++和++p不一样,前者值是p后者是p+1