在本教程中,我们将借助示例了解 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
