*p+1和*(p+1)的区别是什么?

 我来答
小贝贝聊教育
2022-01-02 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6474
采纳率:100%
帮助的人:147万
展开全部

区别是:

1、*p表示此指针指向的内存地址中存放的内容,p表示一个指针变量的名字。

2、*p一般是一个和指针类型一致的变量或者常量,p输出的是一个16进制数。

3、*p是让程序去那个地址取出数据,p存放的是地址。

p是一个指针,一个指向长度为3的数组的指针。直接在p上偏移就是行,在*p上偏移就是列。比如:**(p+1)等价于p[1][0]等于40;*(*p+1)等价于p[0][1]等于20。所以,上面这道题中p[0][0]=10,*(p[0]+1)=20,(*p)[2]=30。

*p和p的不同:

1、表示的含义不同

*p表示此指针指向的内存地址中存放的内容。

p表示一个指针变量的名字,指此指针变量所指向的内存地址。

2、输出的格式不同

*p一般是一个和指针类型一致的变量或者常量。

p输出的是一个16进制数, 输出一个指针的地址。

3、功能不同

*p是让程序去那个地址取出数据。

p存放的是地址。

心缘成空
2022-01-13
知道答主
回答量:1
采纳率:0%
帮助的人:398
展开全部
*p+1是*p的内容+1,*(p+1)是*p的地址+1后该地址的内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式