C++ cin>> 与 cin.get()
-
原理:当
cin>>
从缓冲区中读取数据时,若缓冲区中第一个字符是空格、tab或换行这些分隔符时,cin>>
会将其忽略并清除,继续读取下一个字符,若缓冲区为空,则继续等待。但是如果读取成功,字符后面的分隔符是残留在缓冲区的,cin>>
不做处理。 若:不想略过空白字符,那就使用noskipws
流控制。比如cin>>noskipws>>input
; -
如果到了文件末尾
while(cin >> str){}
// 能够自动退出。
如果使用scanf();
while(scanf("%d", &n) == EOF){}
-
ch = cin.get()
执行成功则ch被赋值键入的字符;
执行失败ch则被赋值为ASCII为-1的字符;cout << (int)ch << endl; // 输出 -1
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现