C++ C++;如何限制每次输入一个字符?

C++ C++;如何限制每次输入一个字符?,c++,input,C++,Input,我有一个程序,要求用户多次输入,并将输入存储在不同的char变量中,然后对这些变量执行操作 我的问题是,我想限制输入一次只对一个变量起作用。 例如: char a = 'a', b = 'b', c = 'c'; cout << "Enter a "; cin >> a; cout << "\nEnter b "; cin >> b; cout << "\nEnter c "; cin >> c; cout <

我有一个程序,要求用户多次输入,并将输入存储在不同的char变量中,然后对这些变量执行操作

我的问题是,我想限制输入一次只对一个变量起作用。 例如:

char a = 'a', b = 'b', c = 'c';
cout << "Enter a ";
cin  >> a; 
cout << "\nEnter b ";
cin  >> b;
cout << "\nEnter c ";
cin  >> c;

cout << "Entered chars were " << a << ", " << b << ", " << c;
chara='a',b='b',c='c';
cout>a;
cout>b;
cout>c;

cout您应该逐行读取输入,然后解析它。因此

std::cout << "Enter a:\n";
std::string input;
std::getline(std::cin, input);
if(input.length() != 1)
   //error
else
   char a = input[0];

来自C语言的
std::cout。您可以使用getch();一次只取一个字符

如果你想输入多个字符,我指的是字符串。使用getch();在循环中使用。
getch()来自conio.h,getche()也可在控制台上显示。

您只需调用
ignore
即可消除其余的输入(缓慢而痛苦)。使用getline一次只获取一行。丢弃每行上多余的值。