c语言中*t++ 和(*t)++分别代表什么

详解!... 详解! 展开
 我来答
百度网友e1c371a
2018-03-30 · TA获得超过1.4万个赞
知道小有建树答主
回答量:115
采纳率:100%
帮助的人:6.6万
展开全部

*t++其实就是*(t++),先取*t,然后t这个指针再后移一位。

(*t)++就是先取*t,把*t这个值再++,就是*t这个值自增1。

*t++是取值后指针自增,(*t)++是取值后把取出来的值自增。

C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。

它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。

糖二灰
推荐于2017-11-26 · TA获得超过3940个赞
知道小有建树答主
回答量:1052
采纳率:75%
帮助的人:1059万
展开全部
*t++就是*(t++),也就是先取*t,然后t这个指针在后移一位
(*t)++就是先取*t,然后把*t这个值再++,就是*t这个值自增1,
前一个是取值后,指针自增,后一个是取值后,把取出来的值自增。
追问
*(t++)不是先看括号里的么  指针先后移一位   然后再*,那就应该是后一位里面的值啊
追答
++在后是先运算再自增,
如果是*(++t)才是你说的那种情况。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
装伐崭0c
2013-08-19 · 超过22用户采纳过TA的回答
知道答主
回答量:135
采纳率:0%
帮助的人:27.8万
展开全部
前者是*(t++),t++是t所代表的地址增加一个,*(t++)就是代表指向t的下一个地址的数值;后者就是单纯的让t的地址里的数值加1. 还有不懂得在追问吧,希望能帮到你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
懒蛋看家
2013-08-19
知道答主
回答量:6
采纳率:0%
帮助的人:8698
展开全部
用一个例子来解释:
int *t[2]={3,7};
" *t[]++,++的优先级大于*,先进行t自增,这时t为下一个元素的首地址,*t[0]++=*t[1] "
" 而(*t)++,先进行“ * ”(“指向”)再自增,(*t[0])++表示3++
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Nix张
2013-08-19 · TA获得超过148个赞
知道答主
回答量:66
采纳率:100%
帮助的人:52.8万
展开全部
a = *t++ : a = *t;t++;指针指向的值不变,指针自加
a = (*t)++ : 指针不变,指针指向的值+1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式