C语言指针可以直接加数么

来源:百度知道 编辑:UC知道 时间:2024/06/10 19:48:34
比如
int *p;
p=p+2;
不知道这样是否可以,如果不可以该怎么操作,谢谢
想把分数平分给大家,不知道该怎么操作。。。。

可以的!
不过你要先初始化该指针!
这个整数会和指针所指类型的字节数相乘,然后所得的结果会加到初始地址上。

可以指针直接移动到其指向地址的下2个地址单元。
一般来说这是在内存中数据连续存储的情况下使用,比如数组char a[]={'a','b','c','d','e','f'};char *p=a;
*(p++)就表示字符b,*(p+3)即为字符d

可以,不过如果你不能保证p+2后指向的空间是你自己定义生成的,请不要用修改*p的值.

可以,就像数组,但有危险

可以,就是让p指向p的起始位置的下2位,因为p位int型,就是p下滑两个int的长度,重新指向新位置