cin.get()函数
作者:野牛程序员:2025-11-10 15:56:52C++阅读 2237
cin.get()函数
cin.get() 为 C++ 中的输入函数成员之一,属于 istream 类,用于从标准输入读取字符。常见用途包括读取单个字符、读取包括空白字符在内的内容、或清理缓冲区。
✅ 基本功能
读取 单个字符(可包含空格、换行符、制表符等)
可用于处理上一条输入留下的换行符
常用于字符级输入、多字符读取控制
✅ 常见用法
⭐ 1)读取单个字符
char c; cin.get(c); // 将输入的字符存入 c
⭐ 2)返回读取字符(无参数形式)
char c; c = cin.get();
✅ 读取一行(包含空白)
char str[50]; cin.get(str, 50); // 读取最多49字符,遇到换行停止但不吞掉换行
可搭配 cin.get() 再吞掉换行:
cin.get(str, 50); cin.get(); // 吞掉残留换行符
✅ 常见问题与注意点
📌 与 cin >> 区别
| 特性 | cin >> | cin.get() |
|---|---|---|
| 读空格 | ❌ | ✅ |
| 常用于 | 字词输入 | 字符/整行处理 |
| 遇空白停止 | ✅ | ❌ |
📌 清理缓冲区
若之前使用 cin >>,缓冲区可能残留换行符,cin.get() 可用于清除:
cin >> x; cin.get(); // 读取并丢弃换行符
✅ 示例:读取含空格的整行文本
char buf[100]; cin.get(buf, 100); cin.get(); // 清除换行
✅ 示例:判断文件结束或错误
cin.get() 返回 EOF 时表示结束
int c;
while ((c = cin.get()) != EOF) {
cout.put(c);
}✨ 小结
cin.get()可读取 空白字符常用于处理字符或整行输入
与
cin >>配合时需注意缓冲区换行处理
结构简洁,使用灵活,是处理字符输入的常用利器。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

