5个回答
展开全部
*t++其实就是*(t++),先取*t,然后t这个指针再后移一位。
(*t)++就是先取*t,把*t这个值再++,就是*t这个值自增1。
*t++是取值后指针自增,(*t)++是取值后把取出来的值自增。
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。
展开全部
*t++就是*(t++),也就是先取*t,然后t这个指针在后移一位
(*t)++就是先取*t,然后把*t这个值再++,就是*t这个值自增1,
前一个是取值后,指针自增,后一个是取值后,把取出来的值自增。
(*t)++就是先取*t,然后把*t这个值再++,就是*t这个值自增1,
前一个是取值后,指针自增,后一个是取值后,把取出来的值自增。
追问
*(t++)不是先看括号里的么 指针先后移一位 然后再*,那就应该是后一位里面的值啊
追答
++在后是先运算再自增,
如果是*(++t)才是你说的那种情况。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
前者是*(t++),t++是t所代表的地址增加一个,*(t++)就是代表指向t的下一个地址的数值;后者就是单纯的让t的地址里的数值加1. 还有不懂得在追问吧,希望能帮到你
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用一个例子来解释:
int *t[2]={3,7};
" *t[]++,++的优先级大于*,先进行t自增,这时t为下一个元素的首地址,*t[0]++=*t[1] "
" 而(*t)++,先进行“ * ”(“指向”)再自增,(*t[0])++表示3++
int *t[2]={3,7};
" *t[]++,++的优先级大于*,先进行t自增,这时t为下一个元素的首地址,*t[0]++=*t[1] "
" 而(*t)++,先进行“ * ”(“指向”)再自增,(*t[0])++表示3++
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a = *t++ : a = *t;t++;指针指向的值不变,指针自加
a = (*t)++ : 指针不变,指针指向的值+1
a = (*t)++ : 指针不变,指针指向的值+1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询