社区
C++ 语言
帖子详情
关于++ ,-- ?在变量前面与后面的区别?
Alice905747457
2011-11-07 09:38:18
现在在自学C++,可是看书的时候有很多问点?现在就有点搞不太懂,请问你们谁能详细的解释下,
谢谢亲们。
唉,好烦,学习编程为什么这么难呢。
谁能帮帮我啊。
...全文
1123
17
打赏
收藏
关于++ ,-- ?在变量前面与后面的区别?
现在在自学C++,可是看书的时候有很多问点?现在就有点搞不太懂,请问你们谁能详细的解释下, 谢谢亲们。 唉,好烦,学习编程为什么这么难呢。 谁能帮帮我啊。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shongzhaoyang
2011-11-08
打赏
举报
回复
++在前,先++再计算。在后,先计算再++
petershijin
2011-11-08
打赏
举报
回复
[Quote=引用 11 楼 suizouwuya 的回复:]
引用 3 楼 sryan 的回复:
++在前和在后都是表达式 理解好表达式的值就行了
++在前 表达式的值是原值+1 并且返回自身的引用 可以当左值
++在后,表达式的值是原值,返回的是一个临时的变量,不能当左值
3楼说的就可以结贴了吧
[/Quote]
严重同意此答案。
qwer_boo
2011-11-08
打赏
举报
回复
[Quote=引用 1 楼 keiy 的回复:]
计算顺序不同,EX:
a=i++; //a=i;i=i+1; 先赋值,后++
a=++i; //i=i+1; a=i; 先++,后赋值
[/Quote]++
追求执着
2011-11-08
打赏
举报
回复
漫漫来,冰冻三尺非一日之寒!
一叶之舟
2011-11-08
打赏
举报
回复
a=i++; //a=i;i=i+1; 先赋值,后++
a=++i; //i=i+1; a=i; 先++,后赋值
apn172
2011-11-07
打赏
举报
回复
在前面参与运算之前先计算,在后面参与运算之后再计算
suizouwuya
2011-11-07
打赏
举报
回复
[Quote=引用 3 楼 sryan 的回复:]
++在前和在后都是表达式 理解好表达式的值就行了
++在前 表达式的值是原值+1 并且返回自身的引用 可以当左值
++在后,表达式的值是原值,返回的是一个临时的变量,不能当左值
[/Quote]
3楼说的就可以结贴了吧
fiveznh
2011-11-07
打赏
举报
回复
++,--前置的话,变量直接自增自减后直接使用,
如果是后置的话,同样是先运算,但暂不使用,却临时申请内存存储这个变量,效率自然没有前置的好了
cai0538
2011-11-07
打赏
举报
回复
好好看书,多多动手!
认识视界
2011-11-07
打赏
举报
回复
放在前边是先加后执行其他命令,放在后边是先执行其他命令再植执行加法
自由
2011-11-07
打赏
举报
回复
++运算符其实也是一个函数,任何类也都可以重载这个操作符
前置的形式是:
const int& operator++(int& a);
return 加后的值
后置的形式是:
const int operator++(int& a, int);
return 加前的值
代码只用作示意
zzcmx2008
2011-11-07
打赏
举报
回复
[Quote=引用 3 楼 sryan 的回复:]
++在前和在后都是表达式 理解好表达式的值就行了
++在前 表达式的值是原值+1 并且返回自身的引用 可以当左值
++在后,表达式的值是原值,返回的是一个临时的变量,不能当左值
[/Quote]
+
iamnobody
2011-11-07
打赏
举报
回复
[Quote=引用 1 楼 keiy 的回复:]
计算顺序不同,EX:
a=i++; //a=i;i=i+1; 先赋值,后++
a=++i; //i=i+1; a=i; 先++,后赋值
[/Quote]
这个。。。个人认为没有先赋值后++之说。以下是我的看法。
c++中,一个表达式可能有一个值。例如:i+1; i = 3;i * 2; fun();//fun()有返回值时。;i+=3;i++这样的表达式都有一个值。
(i++)这个表达式的值是i修改之前的值。
(++i)这个表达式的值是i修心之后的值。
JieTouLangRen
2011-11-07
打赏
举报
回复
前置比后置的效率高
碎炎
2011-11-07
打赏
举报
回复
++在前和在后都是表达式 理解好表达式的值就行了
++在前 表达式的值是原值+1 并且返回自身的引用 可以当左值
++在后,表达式的值是原值,返回的是一个临时的变量,不能当左值
mengmingtao
2011-11-07
打赏
举报
回复
放在前面就是先计算
int a,b = 0;
a = ++b;
相当于
b = b+1;
a = b;
而
a = b++;
相当于
a = b;
b = b + 1;
柯本
2011-11-07
打赏
举报
回复
计算顺序不同,EX:
a=i++; //a=i;i=i+1; 先赋值,后++
a=++i; //i=i+1; a=i; 先++,后赋值
基于组态软件温度控制新版系统标准设计.doc
基于组态软件温度控制新版系统标准设计.doc
中国城市大全博客的资源,可访问
中国城市大全博客的资源,可访问
Linux系统下cd命令完整使用指南与实例详解
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 Linux 的 cd 命令是入门第一课,所有后续操作都基于它完成。 格式:cd [目录] 作用:把“当前工作目录”切到指定位置。 常用场景: 切到根目录:cd / 回主目录:cd 或 cd ~ 去绝对路径:cd /opt/soft 回上级:cd .. 回上两级:cd ../.. 上一目录:cd - 复用上个路径:cd !$ 小技巧 目录名含空格用引号:cd "My Folder" Tab 补全名字,省敲键盘。 给常用目录设别名:alias cdp='cd ..' 熟记 cd,再配合 pwd、ls,文件系统任你游。
双代号网络图.ppt
双代号网络图.ppt
JAVAEE程设计之实验室设备基础管理系统.docx
JAVAEE程设计之实验室设备基础管理系统.docx
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章