实验环境为visual studio 2010
对于下段代码:
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
void display(int hour,int minute);
int main()
{
int hour;
int minute;
cout<<"Enter the number of hours: ";
cin>>hour;
cout<<"Enter the number of minutes: ";
cin>>minute;
display(hour,minute);
}
void display(int hour,int minute)
{
cout<<"Time: "<<hour<<":"<<minute<<endl;
}
运行结果为
Enter the number of hour: 9
Enter the number of minute:28
Time: 9:28
让我感到奇怪的是,为什么这三句会自动换行。于是我把代码修改了一下,如下:
#include<iostream>
using std::cin;
using std::cout;
using std::endl;
void display(int hour,int minute);
int main()
{
int hour;
int minute;
cin.get();
cout<<"Enter the number of hours: ";
cin>>hour;
cout<<"Enter the number of minutes: ";
cin>>minute;
display(hour,minute);
}
void display(int hour,int minute)
{
cout<<"Time: "<<hour<<":"<<minute<<endl;
}
当第一次直接用回车的时候,下面依然会换行,但是如果随便输入一下数字再回车,就不会换行,所以...有很多不解,现在先将问题留在这里,继续深读《C++primer plus》