关于c语言printf和++a、a++的那些事

c语言printf的工作原理

首先,c语言的printf函数的参数采用的是栈的输入计算方式,即先将printf的
参数通过计算后将结果按照从右往左的顺序输入到栈中,再先进后出的输出出来,
这就是c语言的printf的工作方式。

++a和–a

接下来要聊的是对于++a和--a在printf中的计算方式,++a和--a都是直接将a+1
或者a-1的值直接放到a的内存中,就是原本的值直接+1或者直接-1

a++和a–

a++和a--的计算步骤和++a和a--的计算方式是不一样的。a++和a--首先是将a的值
传输到一个临时的地址中,再在a的内存中+1或者-1,然后再将这个临时的地址中的
值进行入栈;

关于c语言printf和++a、a++的那些事_第1张图片PS:副本为临时的地址!!!
此时,z的真值为4,自低位输出,如有副本则输出副本,无副本输出现在a的真值4

总结

其实这东西在实际过程中是没什么用的,正经人谁会这样子写啊!!!多敲点代码又不会死!!!!!

你可能感兴趣的:(c语言,c#,算法)