问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

后自增操作符产生的是右值

发布网友 发布时间:2022-04-22 09:14

我来回答

5个回答

热心网友 时间:2023-10-23 16:33

C/C++语言支持前自增操作符(++a)和后自增操作符(a++),含义有微小的差别:前自增操作符首先把变量的值增加1保存在变量中,然后返回变量的值;后自增操作符首先返回变量的值,然后再把变量值增加1保存在变量中。
需要说明的是,a++或者++a返回右值。所谓右值就是一个临时变量,没有名字,所以不能对其修改。而且,计算出这个算术表达式之后很快该变量就消失。
比如int result=a++;语句中,a++的返回值保存在一个临时变量中,把这个临时变量的值赋给result后,这个临时变量就释放了。
后自增操作符是与前面一个操作数结合,a++++中前面两个加号是右自增操作符,但是后两个加号就解释不通了。因为自增操作符必须对变量(具有名字的)操作。
++++a则不同:前自增操作符与后面一个操作数结合(当然也必须是具有名字的变量),所以后面两个加号可以理解为前自增操作符。操作结果直接保存在该变量(a)中。前两个加号也是前自增操作符。

右值:不能对其进行更改;
左值:可以对其进行赋值等操作。

总之,a++返回的是右值:该值是变量a的一个副本,该副本变量没有名字,因此不能对之进行自增运算,因为它占有的空间马上就释放掉了。++a直接把a加上1然后保存在a中,该过程没有产生临时变量,对++a的访问仍然是在访问a变量,因此还可以继续对其进行操作。追问而第二个加号可以理解为+操作符,该操作符对变量或者一个数操作后返回变量或者数的值。第一个加号也是这一意思。
int i=1;++++i;得到的i值是3

追答Sorry,刚才我犯错误了,现在改正了。

热心网友 时间:2023-10-23 16:33

这个简单。楼主知道不知道左值有右值的区别呢?
其实这取决于++左结合操作符号的操作函数,楼主可以研究下:编译器中对于++a的调用相当于
int operator++ (int)
而++右操作符操作函数时,相当于这样,返回的依然是一个int型,所以无论++在a的左边多少个都是可以的。
const int operator++()
注意这里返回的是一个const的,const只能作为右值,而不能作为左值的。所以a++是可以的,但是a++++就不行,因为a++返回的是一个const的int值,而该值是不能改变的,所以a++++不行。
楼主懂了吗?

热心网友 时间:2023-10-23 16:34

a++返回的是a的值,是值,所以不能在++
++(a++)也是错误的。
而++a返回的是a+1之后的a的副本(&a),所以可以继续++(++a)

by vase

热心网友 时间:2023-10-23 16:34

两种都是不可以的!

a本来是左值,而(a++)和(++a)只能是右值。
根据 ++ 规则,只能作用于左值,不能作用于右值。

热心网友 时间:2023-10-23 16:35

顶LaceTao。不过好像,有参数的是后缀的++吧,另前缀的++据说返回的是引用?确认下。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
空调加氟时要注意什么? 电脑安装了pr兼容性pr显示系统兼容性报告 带你了解——赫伯罗特 一千克面粉三十元一克面粉多少钱 大米2元500克面粉3元500克 2千克大米和和1500克面粉多少钱?_百度... ...面粉每千克多少元.大米25千克4.5元一千克面粉2 买8000克面粉需要32元,每千克面粉多少钱 500克面粉2元钱1千克面粉多少钱,怎么练式? 软棕和硬棕哪个好 amd rx6800m相当于nvidia什么水平? 一个成语中带有巨跟木两个字请问是哪个成语? C++后自增问题。代码如下: 宛什么巨什么成语,求帮助 哪有免费下载VCD格式的歌曲?就是哪种KTV点歌系统里... C++中前自增和后自增的区别,让我明白就给分! 五四手枪多大子弹 深圳市龙宇天下科技有限公司怎么样? 姓名中有巨字的明星 礼光KTV如何添加WAV歌库 使命召唤8里的五七式手枪是什么 一个新人问题,朋友网盘给的歌库,如何全部加进视... 阿蛮歌霸播放器播放mkv格式文件为何说打开文件失败... 曹操以手指玄德后自指翻译 含巨的成语有什么 FN57哪个公司的 欧凯点歌系统怎么才可以支持MKV求大神帮助 手枪一般用的都是几毫米子弹? 上面没压盘,下面托单很大是不是要大跌 带有“巨”字的成语有哪些? 汽车发动机正常运动,后自停是什么原因? 有百万粉丝的快手主播直播非法捕鱼70斤被抓,给水... 形容大小事情都亲力亲为的一个成语,请知道告知。... 操以手指玄德,后自指,曰:“今天下英雄,惟使君与... 关于前自增和后自增的疑问 用万用表能否检测出电动车控控制器的好坏 巨字的偏旁部首名称 C语言前自增和后自增的问题 手机控车如何操作? 世界上口径最小的枪是什么枪? 岚落君未语 别后自清颜 望知道的解释一下 我双动力电动车控控制器能改成单动力的吗 谁可以告诉我CS里面的枪都叫什么名字 车控电子产品是软硬件结合的嵌入式系统是什么? 老电脑来电后自自动 巨字的偏旁部首名称? 国际上著名的枪械公司,有哪些? 门球闪击完后自球违例怎么办 高分!CS各种枪支的伤害 简述IBP盘远程控制的系统及车控室发生火灾的操作过程 后自生秘贴怎么样