在本教程中,我们将借助示例了解 C++ 中的 cin 对象。
cin
对象用于接受来自标准输入设备(即键盘)的输入。它在iostream 头文件中定义。
示例
#include <iostream>
using namespace std;
int main() {
int num;
cout << "Enter a number: ";
// take integer input
cin >> num;
cout << "You entered: " << num;
return 0;
}
输出
Enter a number: 25 You entered: 25
cin 语法
用法:
cin >> var_name;
这里,
>>
是提取运算符。var_name
通常是一个变量,但也可以是数组、向量、列表等容器的元素。
cin 与提取运算符
"c"在cin
指"character"和"in"方法"input".因此cin
方法"character input".
cin
对象与提取运算符>>
一起使用,以便接收字符流。例如,
int num;
cin >> num;
>>
运算符也可以在同一语句中多次使用以接受多个输入:
cin >> var1 >> var2 >> … >> varN;
示例 1:带有提取运算符的 cin
#include <iostream>
using namespace std;
int main() {
int num1, num2, num3;
cout << "Enter a number: ";
// for single input
cin >> num1;
cout << "Enter 2 numbers:" << endl;
// for multiple inputs
cin >> num2 >> num3;
cout << "Sum = " << (num1 + num2 + num3);
return 0;
}
输出
Enter a number: 9 Enter 2 numbers: 1 5 Sum = 15
cin 与成员函数
cin
对象还可以与其他成员函数一起使用,例如 getline()
, read()
等。一些常用的成员函数有:
cin.get(char &ch):
读取输入字符并将其存储在ch
中。cin.getline(char *buffer, int length):
将字符流读入字符串buffer
, 当- 它已读取
length-1
字符或 - 当它找到 end-of-line 字符
'\n'
或文件末尾eof
时。
- 它已读取
cin.read(char *buffer, int n):
将流中的n
字节(或直到文件末尾)读取到buffer
中。cin.ignore(int n):
忽略输入流中的下一个n
字符。cin.eof():
如果到达文件末尾 (eof
),则返回非零值。
示例 2:带有成员函数的 cin
#include <iostream>
using namespace std;
int main() {
char name[20], address[20];
cout << "Name: ";
// use cin with getline()
cin.getline(name, 20);
cout << "Address: ";
cin.getline(address, 20);
cout << endl << "You entered " << endl;
cout << "Name = " << name << endl;
cout << "Address = " << address;
return 0;
}
输出
Name: Sherlock Holmes Address: Baker Street, UK You entered Name = Sherlock Holmes Address = Baker Street, UK
cin 原型
iostream 头文件中定义的cin
原型为:
extern istream cin;
C++ 中的 cin
对象是类 istream
的对象。它与标准 C 输入流 stdin
相关联。
cin
对象确保在第一次构造ios_base::Init
类型的对象期间或之前被初始化。
构造 cin
对象后,cin.tie()
返回 &cout
。这意味着如果有任何字符等待输出,则 cin
上的任何格式化输入操作都会强制调用 cout.flush()
。
相关用法
- C++ cin get()用法及代码示例
- C++ clock()用法及代码示例
- C++ clog用法及代码示例
- C++ count()用法及代码示例
- C++ copy_n()用法及代码示例
- C++ complex cosh()用法及代码示例
- C++ copy()用法及代码示例
- C++ cbrt()用法及代码示例
- C++ c32rtomb()用法及代码示例
- C++ count_if()用法及代码示例
- C++ c16rtomb()用法及代码示例
- C++ ctime()用法及代码示例
- C++ copy_backward()用法及代码示例
- C++ cosh()用法及代码示例
- C++ cout用法及代码示例
- C++ calloc()用法及代码示例
- C++ cos()用法及代码示例
- C++ copysign()用法及代码示例
- C++ cmath abs()用法及代码示例
- C++ copy_if()用法及代码示例
注:本文由纯净天空筛选整理自 C++ cin。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。