我已经使用dev c ++和code :: Blocks尝试了这个代码(在多个程序中)但是第一个gets()命令永远不会被执行,后面跟着cin>>
#include<iostream>
#include<stdio.h>
using namespace std;
int main()
{
int i;
char c[10], d[10];
cout<<"Enter int ";
cin>>i;
cout<<"Enter string ";
gets(c); // this is where things act all possessed
cout<<"Enter 2nd string ";
gets(d);
cout<<i<<endl<<c<<endl<<d;
return 0;
}
请帮帮我
我尝试了什么:
我尝试将变量i作为char,然后仅使用gets()来获取输入,这样可以完美地工作 但是我在一些程序中严格要求它作为一个整数,以便能够做增量/减量/无论什么
答案 0 :(得分:1)
获取不是'没有被执行',而是返回一个空字符串。发生这种情况是因为cin
将光标留在完成读取的行。您应该以任何可能的方式阅读此行,例如,使用相同的gets
将其读取到某个缓冲区