C中*(a [1])和*(*a + 1)之间有什么区别?

Han*_*Sun 2 c pointers

当我在gdb中调试它们时,它们似乎有所不同.

 (gdb) p order[1]
 $16 = (struct order_s *) 0x746440
 (gdb) p *order+1
 $17 = (struct order_s *) 0x746430
 (gdb) p *order
 $18 = (struct order_s *) 0x746420
Run Code Online (Sandbox Code Playgroud)

C中*a [1]和*(*a + 1)之间有什么区别?

Cla*_*diu 8

运作顺序.a[1]是一样的*(a+1).所以,*a[1]是一样的*(*(a+1)).如果你有,*(*a+1)那么你实际上在做*(a[0]+1).