立即读取输入字符串和用c++中的空格分隔的整数
Read at once inputs string and integer separated by a space in c++
我想知道,在C++中,是否有一种方法可以同时使用两种不同类型的变量包作为输入。例如,我应该从用户那里读取一个命令(一个字符串),后跟一个索引(一个整数),它们之间用空格分隔。
std::istream
的>>
运算符被重载用于许多不同的类型。从std::istream
继承>>
的任何类都可以读取>>
重载的所有类型的输入。这意味着您可以将>>
运算符与std::cin
、std::ifstream
、std::istringstream
等一起使用,以读取多种类型。
您的案例的基本语法形式为
std::string s;
int n;
std::cin >> s >> n; // or std::ifstream, etc.
当然,你应该进行错误检查,以确保你确实收到了你想要的。您可以使用!
运算符来检查流是否处于良好状态。因此,在您的情况下,您可能会使用以下内容:
std::string s;
int n;
if (!std::cin) {
// error handling here
} else {
std::cin >> s; // get the std::string
}
if (!std::cin) {
// error handling here
} else {
std::cin >> n; // get the int
}
相关文章:
- 如何在C++中读取空格分隔的输入 当我们不知道输入的数量时
- 如何将以逗号和空格分隔的整数读取到 2D 数组中?
- 如何逐行读取文件,每行中的内容都用空格分隔并将其写入新文件中
- 用于存储由空格分隔的字符串的 C++/C 数据结构
- C ++中的StringStream有助于使用向量从字符串中提取逗号分隔的整数,而不是空格分隔的整数,为什么?
- 野牛/yacc 解析器在不被空格分隔时跳过 grammer - "unexpected $end"
- 从 stdio 获取一行空格分隔的整数,而不知道它们是多少 (C++)
- 如何从文件中读取用空格分隔的数字
- 反转由空格分隔的字符串元素将返回比原始字符串更大的字符串
- 获取由空格分隔的未知大小的单行输入,并将其存储到整数数组中
- 如果用户输入两个或多个由空格分隔的字符串C++如何防止缓冲区溢出?
- 使用 fstream 在空格分隔文件中查看下一项(不仅仅是一个字符)的方法
- 非空格分隔的文本文件到 2D 矢量
- 如何在用空格分隔的行中获得无限的输入
- 如何从空格分隔的单个字符串中提取多个子字符串
- 如何获得一些用空格分隔的字符
- 在 cpp 中使用 getline 输入数组中的空格分隔数字
- C++ sscanf 空格分隔字符串
- 文本文件解析C++|用空格分隔
- 将空格分隔的输入读取到C++中的数组中