cin 如何拆分整数序列
How does cin split a sequence of integers?
>cin
如何拆分整数序列?下面给出了一个例子:
#include <iostream>
int main() {
int sum = 0, value = 0;
while (std::cin >> value) {
sum += value;
}
std::cout << "Sum is: " << sum << std::endl;
return 0;
}
因此,如果输入是:3 10 30 2 5输出将是:50
但这是如何发生的呢?这些值是否被视为某种数组/列表,或者单个变量的值是否由于 while 循环而更改?
初学者在这里。
以下是 http://www.cplusplus.com/doc/tutorial/basic_io/网站摘录:
cin 上的提取也可以链接以请求多个基准面 在单个语句中:
cin>> a>> b;
这相当于:
1 2
cin>> a; cin>> b;
在这两种情况下,用户都需要引入两个值,一个用于 变量 A,另一个用于变量 B。任何类型的空间都用于 分离两个连续的输入操作;这可能是一个空格, 制表符或换行符。
cin
如何拆分整数序列?
很简单,让我们在这里验证一些事情。
#include <stdio>
using std::cin;
首先,什么是std::cin
?它是在上面包含的标准 I\O 库中创建的对象。
cin >> 123 >> "test" >> true;
什么是>>
,它是如何工作的?它是类std::cin
函数。你正在调用一个函数,如何?上面的例子等效于下面的例子。
cin.operator>>(123).operator>>("test").operator>>(true);
这里的技巧,称为方法级联,是函数cin::operator>>
将返回cin
,因此代码将像这样工作。
cin.operator>>(123);
cin.operator>>("test");
cin.operator>>(true);
相关文章:
- 如何反转整数参数包
- enum是C++中的宏变量还是整数变量
- 如何在C++中将一个值拆分为一个十进制整数
- 如何拆分整数并将所有内容添加到数组中?
- 如何将此整数拆分为其原始值?
- 将向量整数拆分为这些数字的整数
- C++将字符串输入拆分为两个整数
- 使用C 从定界线拆分字符串中提取整数数组
- 试图将字符串拆分为两个整数
- 整数的拆分乘法
- 如何在C++中拆分字符串,其中包含两个由":"分隔的整数?
- C++ 将十进制字符串拆分为两个整数
- cin 如何拆分整数序列
- 一个简单的 C++ 连接/拆分字符串和 char 数组中的整数
- 在 c++ 中拆分一个字符串,从中获取一个整数和一个字符串值
- 拆分一个整数并找到最大的总和C++
- 将64位循环拆分为整数上的几个32位循环
- sscanf C++ 将字符串拆分为整数有时不起作用
- 将整数不向后拆分为数字
- 将整数的数字拆分为向量,旋转它们,然后转换回整数