【读书笔记】C++Primer---第三章
2024-10-12 19:29:52
1.由于为了与C语言兼容,字符串字面值与标准库string类型不是同一种类型;
2.以下代码中,cin有几点需要注意:a.读取并忽略开头所有的空白字符(如空格、换行符、制表符);b.读取字符直至再次遇到空白字符,读取终止
int main()
{
string s;
cin >> s;
return 0;
}
3.string的IO操作还有一个就是getline,终止条件就是遇到换行符,即使是第一个字符是换行符,则表明stirng读取到的是空字符
int main()
{
string line;
while(getline(cin, line))
{
cout << line << endl;
}
return 0;
}
4.任何存储string的size操作结果的变量必须为string::size_type类型,不要把size的返回值赋值给int变量,有string::size_type类型的主要原因是使string的size不受机器的影响;
5.一个string最多能存多少个字节的字符,直接看它的size类型的最大值;
6.在使用索引操作string对象的时候,建议使用string::size_type类型;
7.对字符的操作函数,通常都是存放在cctype头文件中,以下列举部分函数:
isalnum(c) | 如果c是字母或数字,则为true |
isalpha(c) | 如果c是字母,则为true |
iscntrl(c) | 如果c是控制字符,则为true |
isdigit(c) | 如果c是数字,则为true |
isgraph(c) | 如果c不是空格,但可打印,则为true |
islower(c) | 如果c是小写字母,则为true |
isprint(c) | 如果c是可打印的字符,则为true |
ispunct(c) | 如果c是标点符号,则为true |
isspace(c) | 如果c是空白字符,则为true |
isupper(c) | 如果c是大写字母,则为true |
isxdigit(c) | 如果c是十六进制数,则为true |
tolower(c) | 如果c是大写字母,则返回其小写字母形式,否则直接返回c |
toupper(c) | 如果c是小写字母,则返回其大写字母形式,否则直接返回c |
8.C++标准库还包含了C标准库,如在C语言中ctype.h标准库函数,在C++中则去掉.h,在前面加上c,表明该头文件来自C语言标准库,则是#include <cctype>,并且属于std命名空间;
9.const_iterator该类型智能用于读取容器中的元素,但是不能修改其值,如vector<string>::const_iterator iter = test.begin();
10.两个迭代器变量相减,iter1 - iter2,得到的是类型为difference_type的signed类型的值;
11.bitset对象主要用于对二进制位的操作,bitset<16> bitvec1;指定了该对象有16位,全部位都是0;
最新文章
- 2-C程序结构
- P1072 Hankson 的趣味题
- HTC Vive开发笔记之手柄震动
- Bzoj3943 [Usaco2015 Feb]SuperBull
- Python基础(1)python+Eclipse+pydev环境搭建
- Codeforces 56D Changing a String
- js实时监听input中值的变化
- MognoDB3.4.2用户访问配置管理
- MATLAB 音响系统工具箱
- 主动收入VS被动收入
- python+selenium+unnitest写一个完整的登陆的验证
- java文章标题及文章相似度计算hash算法实现
- vs2015智能提示英文改为中文
- SAP 创建 component
- zabbix3.4.7之Zabbix_Trigger_Function详解
- python处理中文
- saltstack二次开发(二)
- echarts - 树图实现四个层级
- 不在同一主机:vsftpd+pam+mysql
- [转帖]SQLSERVER2008R2 将于2019.7.9 结束支持服务 Windows server 2008r2 将于 2020.1.14 结束支持