【发布时间】:2014-01-19 18:03:00
【问题描述】:
为什么这段代码将输出显示为“3 2”而不是“2 3”?
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<string>
#include<map>
#include<vector>
using namespace std;
int main()
{
int i=2;// declare
printf("%d %d\n",i++,i++);//print
return 0;
}
输出为:“3 2” 为什么它以相反的顺序打印
【问题讨论】:
-
C++ 为什么 printf 是未定义的行为
-
我能问一下是什么促使您提出这个问题的吗?如果不是讨论它的奇怪行为,那是什么?
-
@JosephMansfield:每天都有“今天谁会问这个问题?”抽签,轮到这个人被选中了。
-
所以应该将这些问题添加到列表中"What types of questions should I avoid asking ?"