c,c++语言中 i++ 与 ++i
来源:互联网 发布:蜂巢网络与无人机战争 编辑:程序博客网 时间:2024/05/29 17:33
原文链接(这里只说结论,具体实验看原文)
先来看这样一道题目:(某企业面试题)
设有int a=1;那么下面几条语句哪些有错,哪些正确?
A. ++a += ++a; B. ++a += a++; C. a++ += a++; D. a++ += ++a;
不同点
i++:
- 返回没有+1之前的i值。
- 返回一个右值,不能对右值进行赋值操作。
- 在机器码中占用两个寄存器,一个存储没有+1之前的值,一个存储加1之后的值。效率较低。
++i:
- 返回+1 之后的i值
- 返回一个左值,可以对左值进行赋值操作。
- 在机器码中占用一个寄存器,存储了加1之后的值。效率较高。
相同点
- 都是在调用时就计算了i+1。
所以C,D是不正确的,不能对a++进行赋值操作。
0 0
- c,c++语言中 i++ 与 ++i
- 在C语言中 i++与++i的区别
- c语言中i++与++i的使用技巧
- C语言优先级和(i++)+(i++)与(++i)+(++i)
- c语言中 ++i 和 i++ 问题!
- C语言中a[++i],a[i++]
- c语言中i++,++i的计算
- C语言++i和i++
- C语言复习I
- c语言函数---I
- I Love C语言!
- 【C语言】语法--++i与i++的区别
- c语言中i++与++i的区别及运行效率
- C语言中 i++ 和 ++i 有什么区别?
- C语言中 i++ 和 ++i 有什么区别?
- c语言中:data[i]=i[data]
- c语言中i++和++i的区别
- C 语言复习与提高---I. C 语言概述
- 使用九宫格来调整图片
- Ubuntu14.04编译Android FFmpeg详细教程
- 面试题81:有序数组中绝对值最小的元素
- Ehcache(09)——缓存Web页面
- hdu5412 CRB and Queries (整体二分)
- c,c++语言中 i++ 与 ++i
- Android AsyncHttpClient 的简单用法
- Spring使用Cache、整合Ehcache
- STM32系列第31篇--MPU6050六轴传感器
- Qt 消息基础相关_03
- 关于OPencv里仿射变化和透射变换的理解和理论
- Android自定义View入门
- dfs 深度优先搜索
- strcpy的实现