启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第19天,点击查看活动详情
之前聊了c++的字符串对象,也就是string对象,但是不要忽略更小的元素字符,字符组成了字符串,C++对字符串也提供了很多关于字符串元素字符的操作。
这些方法被包含在了cctype头文件当中,在开始加载这个文件就可以使用这些方法了。
ASCII码表
ASCII(American Standard Code for Information Interchange:美国信息交换标准代码)码是一套编码标准。 计算机中都是以二进制存储和表示数据的,ASCII码定义了二进制与字符的对应规则。
其中:
0-31与127:控制字符或通信专用字符(不可显示);
32:空格;
48-57:数字;
65-122:大写和小写字母; 其余:标点、运算符号等。
至于ASCII对照表,由于内容太长,就不在这里展示啦,大家可以从网上找到。
字符方法
方法 | 描述 |
---|---|
isalnum(char) | char是否是数字或字母,如果是返回真。 |
isalpha(char) | char是否是字母,如果是返回真。 |
iscntrl(char) | char是否是控制字符,如果是返回真。 |
isdigit(char) | char是否是数字,如果是返回真。 |
isgraph(char) | char是否是空格,如果是返回真。 |
islower(char) | char是否是小写字母,如果是返回真。 |
isprint(char) | char是否是可打印字符,如果是返回真。 |
isspace(char) | char是否是空白字符,如果是返回真。 |
ispunct(char) | char是否是标点符号,如果是返回真。 |
isupper(char) | char是否是大写字母,如果是返回真。 |
isxdigit(char) | char是否是十六进制数字,如果是返回真。 |
tolower(char) | 如果char是大写字符转换位小写字符,如果不是大写字符,就不变 |
toupper(char) | 如果char是小写字符转换位大写字符,如果不是小写字符,就不变 |
这里需要注意的是:
1、这些方法操作的是字符对象,不是字符串对象。
2、这些方法当中对字符的判断是基于ASCII码表的。
下面编写一个共性案例:
#include <iostream>
#include <string>
#include <cctype>
int main(){
using namespace std;
char str = 'h';
bool v = isalnum(str);
cout << str << endl;
cout << v << endl;
return 0;
}
关于c++字符操作今天就聊这么多,欢迎各位大佬指点。