vlambda博客
学习文章列表

C语言如何计算c = a+++b?

表达式计算都用过,但是这种表达式计算出来后结果是什么样的呢?

c = a+++b;

首先可以确认的是这个代码是不符合编码习惯的,但是从语法上来说他是没有任何问题的,想想看,这个表达式改怎么计算呢?
int a=4,b=5;int c=0;c=a+++b;
上面的表达式,编译器在处理的时候会进行处理,将编译器处理成下面类似表达式的形式:
c=a++  + b;
这样是不是好看多了,那么你知道结果了么?
是10,什么?在仔细想想呢?是10还是9?
答案来了!!!
是9!
我们在编译器里面测试下!


看到上面的表达式你是什么反应呢,是一眼就知道了答案,还是很犹豫?
如果一眼就看出答案。恭喜你,你的基础知识很扎实。
如果你思考了一会,平时就要多温故而知新了。
如果你回答错了,也不用灰心。毕竟有很多人和你一样呢!

最后,希望大家编码的时候多关注下代码可读性。不要为了炫耀技术写一些牛逼的东西。