本文目录一览:
- 1、c语言题目 b=3 ; b=(++b)+(++b)+(++b); 输出最终b=? 答案是16 具体怎么算的?我怎么算到...
- 2、c++中b+=3是什么意思
- 3、c语言指针中*b=3与b=3有什么区别
c语言题目 b=3 ; b=(++b)+(++b)+(++b); 输出最终b=? 答案是16 具体怎么算的?我怎么算到...
计算b=(++b)+(++b)+(++b);时
第一步:计算第一个(++b)这点谁都不会错;此时b=4;
第二步:计算第二个(++b)这点也没有问题吧,此时b=5;
第三步:计算(++b)+(++b)将5代入,(++b)+(++b)=10;这点容易想不通,为什么不是5+4呢?因为变量只有一个存储单元,中间结果被覆盖掉了。
第四步:之后的运算应该不是问题了吧……
程序是先运行了b=(++b)+(++b);这儿等号赋值语句执行前,a已经完成了两次自加a的值为5,所以加了之后b=10;然后b=b+(++b);b自加变成6,所以b=10+6=16;
若有帮助
望采纳!
c++中b+=3是什么意思
在C/C++中,操作符称为自反运算符(类似的还有+=、*=、/=、=、|=等等),由前后两个符号无间隔组合而成;其核心意义由前一个符号确定,完成左边的变量与右边的变量的运算关系,后面的=号是把运算结果赋给左边的目标变量的意思。
扩展资料:
C语言便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。
由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。
c语言指针中*b=3与b=3有什么区别
b指针的话,b=a肯定不对。要么*b=a,要么b=a,这两种语法都正确,但是意义不同。前者将a的值赋值给指针b所在的地址,两个值相互不影响。后者将a的地址赋值给指针b,a和b指向同一个内存地址,该地址的值如果有变化,a和*b同时会变化。