printf函数的计算顺序:先从右到左压栈,然后从左到右出栈。
例程:
#include"stdio.h"
int main()
{
int arr[] = { 1, 2, 3, 4, 5 };
int *ptr = arr;
printf("%d %d\n", *ptr, *(++ptr));
return 0;
}
输出:2 ,2
计算顺序:先计算*(++ptr),进行压栈,然后计算*(ptr),再压栈。
注意:++ptr 和 ptr++ 的计算顺序,会导致不同结果。
#include"stdio.h"

本文详细探讨了C/C++中的printf函数和cout表达式的计算顺序。指出printf函数会先从右到左压栈,再从左到右出栈,而cout的计算顺序同样遵循此原则。通过示例程序展示了++ptr和ptr++操作在计算顺序上的差异,影响最终输出结果。

1531

被折叠的 条评论
为什么被折叠?



