一、字符操作函数
在cctype头文件中定义了一组标准库函数处理字符。
下列的函数从属于命名空间std。
1、isalnum(c) 当c是字母或数字时为真。
2、isalpha(c) 当c是字母时为真。
3、iscntrl(c) 当c是控制字符时为真。
4、isdigit(c) 当c是数字时为真。
5、isgraph(c) 当c不是空格但可打印时为真。
6、islower(c) 当c时小写字母时为真。
7、isprint(c) 当c时可打印字符时为真(即c是空格或c具有可视形式)。
8、ispunct(c) 当c是标点符号时为真(即c不是控制字符、数字、字母、可打印空白中的一种)。
9、isspace(c) 当c是空白时为真(即c是空格、横向制表符、纵向制表符、回车符、换行符、进纸符中的一种)。
10、isupper(c) 当c是大写字母时为真。
11、isxdigit(c) 当c是十六进制数字时为真。
12、tolower(c) 如果c是大写字母,输出对应的小写字母;否则原样输出c。
13、toupper(c) 如果c是小写字母,输出对应的大写字母;否则原样输出c。
二、基于范围的for语句
如果想对string对象中的每个字符做点什么操作,目前最好的办法是使用c++11新标准提供的一种语句:范围for语句。其语法形式是:
for (declaration: expression)
statement
其中,expression部分是一个对象,用于表示一个序列。declaration部分负责定义一个变量,该变量将被用于访问序列中的基础元素。每次迭代,declaration部分的变量会被初始化为expression部分的下一个元素。