【C/C++】cctype中的字符函数

c++中头文件为<cctype> ,c中则是<ctype.h>。

这些函数以一个数值或者字符作为参数并返回布尔值true或flase,或者是字符,具体因函数不同

这里面的函数可以分为两类:

判断函数

它们检查输入参数是否属于某个类别:

isalnum
如果参数是字母数字,即字母或数字,该函数返回true
isalpha
如果参数是字母,该函数返回真

isblank 

如果参数是空格或水平制表符,该函数返回true

iscntrl
如果参数是控制字符,该函数返回true
isdigit
如果参数是数字(0~9),该函数返回true
isgraph
如果参数是除空格之外的打印字符,该函数返回true
islower
如果参数是小写字母,该函数返回true
isprint
如果参数是打印字符(包括空格),该函数返回true
ispunct
如果参数是标点符号,该函数返回true
       

isspace


如果参数是标准空白字符,如空格、进纸、换行符、回车、水平制表符
或者垂直制表符,该函数返回true

isupper
如果参数是大写字母,该函数返回true
isxdigit
如果参数是十六进制的数字,即0~9、a~f、A~F,该函数返回true

 字符转换函数:

tolower
如果参数是大写字符,则返回其小写,否则返回该参数
toupper
如果参数是小写字母,则返回其大写,否则返回该参数

我们将ASCII值从0~127的字符通过第一个函数集的函数进行判断,返回值为true的用x标记,结果如下表:

ASCII values characters
is

cntrl


is

blank


is

space


is

upper


is

lower


is

alpha


is

digit


is

xdigit


is

alnum


is

punct


is

graph


is

print

0x00 .. 0x08 NUL, (other control codes) x                      
0x09 tab ('\t') x x x                  
0x0A .. 0x0D (white-space control codes:'\f','\v','\n','\r') x   x                  
0x0E .. 0x1F (other control codes) x                      
0x20 space (' ')   x x                 x
0x21 .. 0x2F !"#$%&'()*+,-./                   x x x
0x30 .. 0x39 0123456789             x x x   x x
0x3a .. 0x40 :;<=>?@                   x x x
0x41 .. 0x46 ABCDEF       x   x   x x   x x
0x47 .. 0x5A GHIJKLMNOPQRSTUVWXYZ       x   x     x   x x
0x5B .. 0x60 [\]^_`                   x x x
0x61 .. 0x66 abcdef         x x   x x   x x
0x67 .. 0x7A ghijklmnopqrstuvwxyz         x x     x   x x
0x7B .. 0x7E {|}~                   x x x
0x7F (DEL) x                      

扩展的ASCII字符集用上述函数的判断结果依赖于平台。一般来说,在许多支持扩展的ASCII字符集的平台下,标准C里面的ispunctisgraph 和isprint 函数返回true.

时间: 2024-09-20 05:50:28

【C/C++】cctype中的字符函数的相关文章

C语言string.h中常用字符函数介绍

strcpy 函数名: strcpy 功 能: 拷贝一个字符串到另一个 用 法: char *strcpy(char *destin, char *source); 程序例: #include <stdio.h> #include <string.h> int main(void) { char string[10]; char *str1 = "abcdefghi"; strcpy(string, str1); printf("%s\n",

(八十四)字符函数库cctype

cctype实际上就是一个函数库,他包括多个函数,在调用这些函数的时候,他会自动帮你判断,是否是该函数要求的类型,如果是,返回一个非0 int值(并非固定的)--但可以理解为true值(因为bool后是1),如果不是,返回一个0. 例如:(括号内填变量名,或者用''包含在一起的字符) isalpha()是查证是否是字母,大写字母返回1,小写字母返回2. 下列表格: 函数名 返回值(符合返回非0值) isalpha() 字母 isalnum() 字母或数字 iscntrl() 控制字符(这是什么?

PHP实现删除字符串中任何字符的函数_php技巧

本文实例讲述了PHP实现删除字符串中任何字符的函数.分享给大家供大家参考.具体如下: function delStr($start, $end, $orgenStr) { //读取要删除字符位置的前一部分字符串,并赋值给$temp //strpos读取字符第一次出现的位置 //substr读取指定开始与结束位置的子字符串 //echo $before."-". $last; $temp=$orgenStr; while(strpos($temp, $start) &&

php中的字符编码转换函数用法示例_php技巧

本文实例讲述了php中的字符编码转换函数的用法,分享给大家供大家参考.具体实现方法如下: 一般来说,在网页程序中,尤其是涉及到数据库的读出过程中,往往最恼火的就是字符编码的问题,php4.0.6以上的版本提供了mb_convert_encoding 可以方便的转换编码. 具体如下: 复制代码 代码如下: <?php /* Convert internal character encoding to SJIS */ $str = mb_convert_encoding($str, "SJIS

vc++-在VC++2013版中使用itoa函数(被各种字符转换弄晕了)

问题描述 在VC++2013版中使用itoa函数(被各种字符转换弄晕了) void CTestDlg::OnClickedBtnAdd() { int num1, num2, num3; char ch1[10], ch2[10], ch3[10]; GetDlgItem(IDC_EDIT1)->GetWindowText(_T("ch1"), 10); GetDlgItem(IDC_EDIT1)->GetWindowText(_T("ch2"), 10

java中常用字符处理函数

substring() 它有两种形式,第一种是:String substring(int startIndex) 第二种是:String substring(int startIndex,int endIndex) concat() 连接两个字符串 replace() 替换 它有两种形式,第一种形式用一个字符在调用字符串中所有出现某个字符的地方进行替换,形式如下: String replace(char original,char replacement) 例如:String s="Hello&

在数组中查询指定字符函数

在数组中查询指定字符函数 #include <iostream> using namespace std; bool find(int a[], int n, const int &sum, int &x, int &y) {     int i = 0, j = n-1, csum;     while (i < j)     {         csum = a[i] + a[j];         if (csum == sum)         {    

三种java 去掉字符串中的重复字符函数

三种java 去掉字符串中的重复字符函数 */ public static void main(string[] args) {         system.out.println(removerepeatedchar("ddddccffgd"));     }     public static string removerepeatedchar(string s) {         if (s == null)             return s;         str

Oracle中处理LOB字段的常用字符函数

以前处理LOB字段都是使用DBMS_LOB包,最近看了文档才发现,原来很多常用的字符函数都是支持LOB字段的. 建立一个测试表: SQL> CREATE TABLE T_LOB (ID NUMBER, CONTENTS CLOB); Table created. SQL> DECLARE 2     V_LOB CLOB; 3  BEGIN 4        INSERT INTO T_LOB 5     VALUES (1, EMPTY_CLOB()) 6     RETURN  CONTE