在Ubuntu的GNOME终端和XTerm中,我遇到了这个问题:
我被迫为所有domain
语句输入值,无论它们出现在源代码中的哪个位置,并且只在最后执行所有cin
语句。例如:
cout
当我运行此代码(使用g ++)时,我不得不在运行第一个int main()
{
int a;
cout<<"Enter a :";
cin>>a;
cout<<"\n";
return 0;
}
语句之前输入a
的值。
cout
'5'是我在任何
kanishk509@kanishk509-hp:~/Hackerearth$ g++ -Wall -o sample sample.cpp
kanishk509@kanishk509-hp:~/Hackerearth$ ./sample
5
Enter a :
语句运行之前被强制提供给语句cin>>a
的输入。
答案 0 :(得分:0)
使用std::flush
解决了问题。
int main()
{
int a;
cout<<"Enter a :"<<flush;
cin>>a;
cout<<"\n";
return 0;
}
kanishk509@kanishk509-hp:~/Hackerearth$ g++ -Wall -o sample sample.cpp
kanishk509@kanishk509-hp:~/Hackerearth$ ./sample
Enter a :5