wildest dreams mv解析:弱智C++问题

来源:百度文库 编辑:神马品牌网 时间:2024/04/29 19:36:07
char *p1 = 0; p1++

P1++和P1+=1的效果是否是一样的?

是一样的效果啊...
p1++实际上就是p1=p1+1;
p1+=1也是p1=p1+1;
所以是一样的效果....
-------------
原因是因为:p1是一个char型的指针,p1++是将p1在内存中移动一个"单位",这儿的"单位"理解为所指向的数据类型的占用内存空间
的大小,如果这儿的p1是一个int 型的指针,如:
int *p1=0;
那么p1++就和p1+=4等效了,
因为一个整型的变量在内存中占4个字节的空间,所以它移动一个"单位"就是移动了四个字节...
-------------------
再补充一点:
一个char型的变量占内存空间1个字节