c++ - 如何使 c++ 使用 cin 可选?

标签 c++ cin

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

下面的代码示例:

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;

问题是,当第三个 block 丢失时,它总是要求输入中间名,这根据 cin 的工作原理是正确的。问题是我无法弄清楚如何使它成为可选的。
例如,
  • 输入 1:Abby Scuito A => 输出:Abby Scuito A
  • 输入 2:Abby Scuito => 输出:Abby Scuito
  • 最佳答案

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

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

    关于c++ - 如何使 c++ 使用 cin 可选?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61982696/

    相关文章:

    c++ - struct 中的 cin 和 char 数组指针

    c++ - std::cin 错误输入的无限循环

    c++ - 'int i = 0' vs. ' int i(0 )' in a ' for' 循环(赋值 vs 初始​​化计数变量)

    c++ - 在 Qt 应用程序中使用时出现奇怪的类行为

    c++ - 如何尝试读取为 int,如果失败则读取为字符串?

    c++ - 尝试在 std::cout 和 std::ifstream 之间切换

    C++,cin,直到不再使用 while 循环在线输入

    c++ - 在 SFML 中镜像 Y 轴

    c++ - 选酒动态规划

    c++ - 项目错误 : Unknown module(s) in QT: script?