废话不说,直接引入正题~
++i会将i的值自增1,然后将i的值返回。
i = 1;
j = ++i;
(i 等于 2, j 等于 2)
i++会将i的值自增1,但是将自增之前的值返回
i = 1;
j = i++;
(i 等于 2, j 等于 1)
对于一个for循环来说
for(...;...;i++){}
for(...;...;++i){}
通常来说,更加倾向于使用++i,因为在K&R中使用++i (注:K&R指The C Programming Language一书,该书中代码风格简练,被极大的推崇)
----------------------------------------------------------------------
关于++i和i++的效率问题,一直是人们讨论的话题。
实际上,i++和++i在c语言里面效率是一样的,这里引用一个Example
extern void g(int i);
void f()
{
int i;
for (i = 0; i < 100; i++)
g(i);
}
extern void g(int i);
void f()
{
int i;
for (i = 0; i < 100; ++i)
g(i);
}
经过编译后
$ md5 i++.s ++i.s
MD5 (i++.s) = 90f620dda862cd0205cd5db1f2c8c06e
MD5 (++i.s) = 90f620dda862cd0205cd5db1f2c8c06e
$ md5 *.o
MD5 (++i.o) = dd3ef1408d3a9e4287facccec53f7d22
MD5 (i++.o) = dd3ef1408d3a9e4287facccec53f7d22
而在C++里面,++i的效率则要比i++更高,这是因为,在C++里面的operator++()是一个函数,编译器并不知道i++临时保存下来的可以被优化。
总而言之的话,我个人推荐在无必要的情况下,采用++i代替i++
分享到:
相关推荐
基于51单片机16x16点阵广告牌设计(含仿真+源码+论文+原理图) 基于51单片机16x16点阵广告牌设计(含仿真+源码+论文+原理图) 基于51单片机16x16点阵广告牌设计(含仿真+源码+论文+原理图) 基于51单片机16x16点阵广告牌...
智慧学生校舍系统 源码+数据库+论文(JAVA+SpringBoot+Vue.JS+MySQL)I
高校学生选课系统 源码+数据库+论文(JAVA+SpringBoot+Vue.JS+MySQL)I
医院信管系统 源码+数据库+论文(JAVA+SpringBoot+Vue.JS+MySQL)I
可能包括不同级别的用户(如管理员和普通用户)对数据的不同访问权限。 以上就是《i学生信息管理系统(VB6.0+Access)》所涵盖的主要IT知识点,它为我们提供了一个实践性的平台,帮助初学者了解和掌握数据库应用开发...
客家菜餐馆点菜系统 微信小程序+SSM毕业设计 源码+数据库+论文+启动教程I
在人事管理系统中,Access用于存储和管理大量的员工信息,如姓名、职位、工资、考勤记录等,通过建立合理的数据表结构和关系,确保数据的一致性和完整性。 系统设计阶段,开发者需要明确系统的目标和功能,如员工...
高校宿舍管理系统 SSM毕业设计 源码+数据库+论文(JAVA+SpringBoot+Vue.JS)I
答辩PPT则集中展示了项目的关键点,方便在答辩过程中清晰地阐述项目的核心价值和创新之处。 源代码是项目的实际实现,它包括了服务器端的JSP文件、数据库连接代码、业务逻辑处理等。通过阅读和分析源代码,学习者...
大学生运动会管理系统 JAVA毕业设计 源码+数据库+论文+启动教程(SpringBoot+Vue.JS)I
摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 B/S架构 4 2.2 Java技术介绍 6 2.3 mysql数据库介绍 6 2.4 springboot框架 4 第3章 系统...
### (I+Cα)预条件Gauss-Seidel迭代法的收敛结果 在数学与计算机科学领域,特别是线性代数和数值分析中,迭代法是一种常见的解决线性方程组Ax = b的方法,其中A是系数矩阵,x是未知向量,b是常数向量。当A是一个...
总结来说,TII 咨询提出的互联网+世界观、价值观和产品方法论,为企业和个人提供了一套适应不确定性的战略框架,强调了速度、敏捷性、灵活性和创新,以应对快速变化的互联网环境。在这样的指导下,企业和个人能够更...
《JSP学生学籍管理系统》是一套基于Java技术的教育信息化解决方案,主要目的是为了方便学校进行学生信息的管理和查询。该系统集成了多种关键功能,包括学生基本信息管理、成绩管理、课程管理等,旨在提高教育机构的...
在本文中,作者赵景余、张玉新等人提出了一个新的预条件(I+S1),并详细分析了这种方法在迭代算法中的收敛性和效果。文章首先回顾了线性代数中的Gauss-Seidel方法,并提出了用新预条件器(I+S1)取代之前常见的预条件...
jspm房屋中介服务平台的设计与实现演示录像2023_i174z(论文+源码+视频)_kaic.mp4
该压缩包文件“JSP+SQL房屋租赁管理信息系统JDBC(源代码+论文+答辩PPT).zip”是一个包含完整项目资源的集合,主要用于教学、学习或参考一个基于JSP技术、SQL数据库和JDBC连接的房屋租赁管理信息系统。这个系统可能由...