cin.get()和cin.getline()之间的区别

cin.getline()和cin.get()都是对输入的面向行的读取,即一次读取整行而不是单个数字或字符,但是二者有一定的区别。

cin.get()每次读取一整行并把由Enter键生成的换行符留在输入队列中,然而cin.getline()每次读取一整行并把由Enter键生成的换行符抛弃,比如:

复制代码
 1 #include <iostream>
 2 using std::cin;
 3 using std::cout;
 4 const int SIZE = 15;
 5 int main( ){
 6     cout << "Enter your name:";
 7     char name[SIZE];
 8     cin.getline(name,SIZE);
 9     cout << "name:" << name;
10     cout << "\nEnter your address:";
11     char address[SIZE];
12     cin.get(address,SIZE);
13     cout << "address:" << address;
14 }
复制代码

输出:
Enter your name:zy
name:zy
Enter your address:njfu
address:njfu

 

posted @   ZYVV  阅读(7984)  评论(1编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示