c++ primer plus阅读笔记1---cin换行符等问题
来源:互联网 发布:软件行业税收优惠政策 编辑:程序博客网 时间:2024/06/14 22:47
1.关于cin
cin 使用空白(空格,制表符和换行符)来确定字符串结束的位置,这意味着cin在获取字符串数组输入时只读取一个单词。读取单词后,cin将该字符串放到数组中,并自动在结尾添加空字符。
2.面向行的输入:getline()和get()
getline()读取整行,它使用通过回车键输入的换行符来确定输入结尾。
getline(name,20) 读取20个字符到name数组中,不保存换行符
cin.getline(name,size) 返回一个cin对象,黑可以这样用:
cin.getline(name1,size).getline(name2,size);
get()读取整行,但是不会丢弃换行符,而是将换行符留在输入队列中例如
cin.get(name,size);//换行符保存在输入队列中cin.get(name,size);//读取的是换行符 cin.get(name,size);//读取第一行cin.get(); //读取换行符cin.get(dessert,size);//读取第二行
3.clear
当get()读取空行以后,将会设置一个失效位,这意味着接下来的输入将会被阻断,但是可以使用cin.clear()来恢复。
当输入的字符串比分配的空间长,则getline()和get()将会把余下的字符留在输入队列中,getline()还会设置失效位,并关闭后边的输入
4.原始字符串:
原始字符串使用"()"做界定符,并且使用前缀R来标识原始字符串
cout<<R"(this is raw string \n)"<<"\n"<<endl;等价于:cout<<"this is raw string \\n"<<"\n"<<endl;
输出为:this is raw string \n
使用原始字符串时,按回车不仅会移动到下一行,还会在原始字符串中添加回车字符如果在原始字符串中包含)",则编译器见到第一个)"将会认为到此结束,正确的做法是:
cout<<R"+*( "(who wouldn't?)",she whispered. )+*"<<endl;这里使用了自定义界定符 +* 既在字符串开头的" (之间添加 +*界定符,同样在末尾也要添加
阅读全文
0 0
- c++ primer plus阅读笔记1---cin换行符等问题
- 《C Primer Plus》阅读笔记(4)
- 《C Primer Plus》阅读笔记(3)
- 《C Primer Plus》阅读笔记(2)
- 《C Primer Plus》开头阅读笔记
- C++primer plus阅读笔记第四章
- c++primer plus阅读笔记(一)
- c++primer plus阅读笔记(二)
- c++primer plus阅读笔记(四)
- c++primer plus阅读笔记(五)
- c++primer plus阅读笔记(六)
- c++primer plus阅读笔记(七)
- c++primer plus阅读笔记(八)
- c++primer plus阅读笔记(九)
- c++primer plus阅读笔记(十)
- c primer plus 阅读共享 -1
- C Primer Plus - 笔记
- c primer plus笔记
- Python3学习(9)--列表生成式(List generation)
- Mybatis的Mapper.xml中<if test>报NumberFormatException
- python 中模块(model)概念的引入 以及 函数变量的作用域
- 一个Activity启动另个Activity的生命周期
- 网易笔试:洗牌
- c++ primer plus阅读笔记1---cin换行符等问题
- Linux 技巧:让进程在后台可靠运行的几种方法
- 智能小车三《技术用到九寨沟去》
- Vue 组件库实践和设计
- Kendo UI单页面程序中文文档
- javaseday14(多线程 lock wait sleep)
- android 两种截屏方式
- cornerstone清除缓存方法
- ATDD和TDD的区别是什么?