这个printf语句如何由C编译器执行?

时间:2013-12-26 06:37:59

标签: c++ c

我很担心printf语句在这个程序中是如何工作的?我想知道执行的方式。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a=5;
    printf("%d %d %d %d\n",a++,++a,++a,1);
    printf("%d",a);
    //printf("Hello world!\n");
    return 0;
}

1 个答案:

答案 0 :(得分:1)

这将调用未定义的行为。声明

 printf("%d %d %d %d\n",a++,++a,++a,1);  

尝试在两个序列点之间修改a三次。