指针的运算 short long

这个图片我不适合很明白,short  long 作为指针诶有什么区别吗?long最下面还少了一根横线,这是什么意思?是有含义的?还是印刷错误?

 

看着是有点问题, 如果是同一块内存 强制转换成short* 和 long*的话,32位机器, long* pa加减应该是4字节跨度,会有4个空格,

如果不是同一块内存的话,感觉怎么画都行,只要加减内存是一样的格数就行。

不论什么类型的指针p   指针本身会有一个地址空间用于存放指向的地址,这个空间恒等于4个字节  size(p) == 4  

short *p  即代表指针指向的空间是short 类型的  那么p所指向的空间恒等于short类型占的空间大小  即 size(*p) ==2  

同理 long*p   则 size(*p) == 4  (long的字节大小32位和64位不同)

个人感觉   你这图有问题  右侧应该是四个格子才对呀!