c语言中*(p++)怎么还是取p的内容呢?括号里面先算在c语言中还成立吗?C语言中括号有什么用啊?

 我来答
zsx10110
2012-03-21 · TA获得超过8872个赞
知道大有可为答主
回答量:2369
采纳率:66%
帮助的人:3108万
展开全部
因为是右结合性的运算符,所以p先和++结合,然后再计算*,所以*p++也就等同于*(p++)。这个算式的计算过程:先算括号里的p++,即先返回p的值,然后p自加,与*结合的是括号中返回的值,即p,所以得到p当前指向的值,所以该表达式最后的值应该是p当前指向的值,
更多追问追答
追问
麻烦解答下c语言中括号的作用?
追答
括号 跟C++的一样啊 先运行括号中的
Clor001
2012-03-21 · TA获得超过803个赞
知道小有建树答主
回答量:399
采纳率:0%
帮助的人:381万
展开全部
因为是后++,右结合性 p先++,地址自增再取值
结果 等同 *p++,也就是 (*p)++

不同的是 ++*p 和 *++p
这个根据结合性,右结合,所以不同。* 和++ 的优先级是相同的
追问
麻烦继续回答我第二个问题!!!!和第三个问题  还有  难道是++P就不是先算* 了吗?
追答
括号里面先算在c语言中还成立吗?
答:括号的优先级在所有的运算符中是最高的,所以永远成立,不同的是需要看结合的运算符的性质。
C语言中括号有什么用啊?
括号的用途:
1.函数调用与声明用到了
2.类型强转用到了
3.表达式优先级可以通过()改变
4.其他
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
charmingpp1
2012-03-21 · 超过23用户采纳过TA的回答
知道答主
回答量:71
采纳率:0%
帮助的人:57.5万
展开全部
*(p++) 相当于 先*p再p++
追问
Why?
追答
规定的啊,你去看一下p++ 和++p具体是怎样结合的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尐綶の尛bf38
2012-03-21
知道答主
回答量:53
采纳率:0%
帮助的人:26.7万
展开全部
应该是(++p),c语言的括号和C++语言的括号是一样的
更多追问追答
追问
说明白点吧..你是说如果括号里是++p 就不是取p的内容了吗
追答
不是p的内容,是p的地址
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式