码迷,mamicode.com
首页 > 其他好文 > 详细

i++和++i 的学习

时间:2017-03-01 23:21:00      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:turn   div   src   space   logs   工作   c++   str   复杂   

在<<C++ Primer>> 第四版 5.5中讲解到:

++i:返回操作之后的结果,且是个左值。

i++:返回操作之前的结果,且是有右值。

 1 // 2_3.cpp : 定义控制台应用程序的入口点。
 2 //
 3 
 4 #include "stdafx.h"
 5 #include <iostream>
 6 
 7 
 8 using namespace std;
 9 
10 int main()
11 {
12     int i(0), j(0);
13     cout << ++i << endl;
14     cout << j++ << endl;
15     return 0;
16 }

 

执行结果如下:

技术分享

 

 

i++:先保存这个值本身,以便于返回未加1时的值。对于int型对象或者指针,编译器可以优化,但是对于复杂类型,这样的额外工作会损耗性能。

++i:将这个值加1,然后返回加1后的结果。

 

i++和++i 的学习

标签:turn   div   src   space   logs   工作   c++   str   复杂   

原文地址:http://www.cnblogs.com/lucy-lizhi/p/6486658.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!