网上有关“c语言++i和i++有什么区别?”话题很是火热,小编也是针对c语言++i和i++有什么区别?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。
1、赋值顺序不同
++i是先加后赋值;i++是先赋值后加;++i和i++都是分两步完成的。
因为++i是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i=a=b,即++i是一个左值;i++的后面一步是自增,不是左值。
形象的理解可以是i++先做别的事,再自己加1,++i先自己加1,再做别的事情。
2、效率不同
比如i=3,b=i++就是说b=3,完成之后让i变成4,b=++i就是先让i++变成4,然后b=4,其中++i比i++效率要高些。一般来说在循环域里面,这两者并没有什么很大的区别,但是要注意其生存周期,以及i值在程序流中的变化。
C语言运算符的特点
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
5、部分的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易地对存储器进行低级控制。
7、预编译处理(preprocessor)让C语言的编译更具有弹性。
c语言i++和++i的区别:
1、i++式子值为原来的值,就是通俗说的“先赋值再加1”;
2、而++i式子值为i变化后的值,也就是“先加1后赋值”。
而在for循环中,如果要表示递增,两种都可以。
例如:
如果i的初始值是0,使用后再加1,则输出i++为0;
如果i的初始值是0,使用前先加1,则输出++i为1。
扩展资料:
C语言运算符的特点
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字(reserved keywords),使变量、函数命名有更多弹性。
5、部分的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易地对存储器进行低级控制。
7、预编译处理(preprocessor)让C语言的编译更具有弹性。
关于“c语言++i和i++有什么区别?”这个话题的介绍,今天小编就给大家分享完了,如果对你有所帮助请保持对本站的关注!
本文来自作者[努力啊大智勇]投稿,不代表广硕号立场,如若转载,请注明出处:https://m.ccguangshuo.com/gush/1925.html
评论列表(3条)
我是广硕号的签约作者“努力啊大智勇”
本文概览:网上有关“c语言++i和i++有什么区别?”话题很是火热,小编也是针对c语言++i和i++有什么区别?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望...
文章不错《c语言++i和i++有什么区别?》内容很有帮助