在本教程中,我們將借助示例了解 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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。