如何使用 cin 使 c++ 成为可选?

How to make c++ using cin optional?

本文关键字:c++ 何使用 cin      更新时间:2023-10-16

我想允许用户从键盘输入三个字符串。例如,名字、姓氏和中间名。中间名是可选的。

下面的代码示例:

cout << "Enter your name, first name then middle name and last name (Ex: Abby Scuito S): ";
char lastName[21], firstName[21], middleName[21];
cin >> lastName >> firstName >> middleName;

问题是,当缺少第三个块时,它总是要求输入中间名,这根据 cin 的工作方式是正确的。问题是我无法弄清楚如何使其成为可选的。 例如

  1. 输入 1:Abby Scuito A => 输出:Abby Scuito A
  2. 输入 2:Abby Scuito => 输出:Abby Scuito

将数据读入单个字符串并用空格分隔。

您可能需要进行一些过滤,但您会明白这一点。