C语言你曾忽略的逗号表达式
大家先判断下下面代码的运行结果
答案:
如果你做对了,那么恭喜大佬,这篇博客可能对你收益不大,全当复习好了,这是专门针对编程小白初学C语言逗号表达式的讲解,诚挚地希望能够到xdm。接下来我将开始我的讲解,手把手带xdm拿捏这个逗号表达式。
逗号表达式:
1、一般逗号表达式格式:(a=b+c,d=a+e);(注:返回的是d的值)
2、逗号表达式的最终结果取决于最后一个式子的运算结果;
3、就拿本题来说:impact += compact,算出来此时的impact等于15,然后又根据式子involve -= impact,算出来involve等于-3,然后将-3这个值返回给evolve,所以evolve打印出来的结果是-3。
代码演示:
4个变量的随机初始化,其中内存1代表impact变量,内存2代表compact变量,内存3代表involve变量,内存4代表evolve变量。
分别给4个变量指定初始化值
evolve变量通过逗号表达式后赋得新值
演示代码提取:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
int impact = 6, compact = 9, involve = 12;
int evolve = 0;
evolve = (impact += compact, involve -= impact);
printf("%d\n", evolve);
return 0;
}
附1:
若看不懂计算机底层计算原理的xdm,这边推荐你看我的这两篇博客
计算机中原码、反码、补码的讲解
编译器大小端存储讲解
备注:
楼主不才,不喜勿喷,若有错误或需要改进的地方,非常感谢你的指出,我会积极学习采纳。谢谢家人们一直以来的支持和鼓励,我会继续努力再接再励创作出更多优质的文章来回报家人们的。编程爱好的xdm,若有编程学习方面的问题可以私信我一同探讨(我尽力帮),毕竟“众人拾柴火焰高”,大家一起交流学习,共同进步!
2022年1月2日