字符分类函数

目录

一.iscntrl()函数

二.isspace()函数

三.isdigit()函数

四.isxdigit()函数

五.islower()函数

六.isupper()函数

七.isalpha函数

八.isalnum()函数

九.ispunct()函数

十.isgraph函数

十一.isprint()函数

ps:所有控制字符:

ps:所有图形字符:

ps:所有空白字符:


前言:本文介绍的函数都是属于头文件<ctype.h>

一.iscntrl()函数

成真条件:任何控制字符

举例说明**:**

cpp 复制代码
#include<stdio.h>
#include<type.h>
int main() {
	if (iscntrl('\n')) {
		printf("其是控制字符");
	}
	return 0;
}

结果:

二.isspace()函数

成真条件:空白字符:空格' ' ,换页:'\f' ,换行:'\n' ,回车:'\r' ,制表符'\t' 或者垂直制表符'\v'

举例说明**:**

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isspace(' ')) {
		printf("其是空白字符\n");
	}
	if (isspace('\n')) {
		printf("其是空白字符\n");
	}
	if (isspace('\f')) {
		printf("其是空白字符\n");
	}
	if (isspace('\r')) {
		printf("其是空白字符\n");
	}
	if (isspace('\v')) {
		printf("其是空白字符\n");
	}
	return 0;
}

结果:

三.isdigit()函数

成真条件:十进制数字'0'~'9' 字符(注意是字符)

举例说明:

cpp 复制代码
#include<stdio.h>
#include<type.h>
int main() {
	if (isdigit('0')) {
		printf("其是数字");
	}
	return 0;
}

结果:

四.isxdigit()函数

成真条件:十六进制数字所有十进制数字字符 ,(小写字母a~f ,大写字母A~F,'0''9'

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isxdigit('A')) {
		printf("其是十六进制数\n");
	}
	if (isxdigit('a')) {
		printf("其是十六进制数\n");
	}
	return 0;
}

结果:

五.islower()函数

成真条件:小写字母a~z

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (islower('a')) {
		printf("其是小写字母\n");
	}
	if (islower('b')) {
		printf("其是小写字母\n");
	}
	return 0;
}

结果:

六.isupper()函数

成真条件:大写字母A~Z

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isupper('A')) {
		printf("其是大写字母\n");
	}
	if (isupper('B')) {
		printf("其是大写字母\n");
	}
	return 0;
}

结果:

七.isalpha函数

成真条件:字符a~z,A~F

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isalpha('a')) {
		printf("其是字母\n");
	}
	if (isalpha('A')) {
		printf("其是字母\n");
	}
	return 0;
}

结果:

八.isalnum()函数

成真条件:字母或者数字 ,a~z,A~Z,0~9

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isalnum('a')) {
		printf("真\n");
	}
	if (isalnum('A')) {
		printf("真\n");
	}
	if (isalnum('1')) {
		printf("真\n");
	}
	return 0;
}

结果:

九.ispunct()函数

成真条件:标点符号 ,任何不属于数字或者字母图形字符 (可打印 )(注意是要是英文版的,中文的不行)

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (ispunct('!')) {
		printf("成真\n");
	}
	if (ispunct(',')) {
		printf("成真\n");
	}
	if (ispunct('.')) {
		printf("成真\n");
	}
	if (ispunct('@')) {
		printf("成真\n");
	}
	if (ispunct('#')) {
		printf("成真\n");
	}
	if (ispunct('%')) {
		printf("成真\n");
	}
	return 0;
}

结果:

十.isgraph函数

成真条件:任何图形字符(字母,字符数字,标点符号)

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isgraph('A')) {
		printf("其是图形字符\n");
	}
	if (isgraph('5')) {
		printf("其是图形字符\n");
	}
	if (isgraph('<')) {
		printf("其是图形字符\n");
	}
	return 0;
}

结果:

十一.isprint()函数

成真条件:任何可打印的字符 ,包括图形字符空白字符 (注意是可打印的哦,像\n这种是不可打印的哦)

举例说明:

cpp 复制代码
#include<ctype.h>
#include<stdio.h>
int main() {
	if (isprint(' ')) {
		printf("成真\n");
	}
	if (isprint('a')) {
		printf("成真\n");
	}
	if (isprint('a')) {
		printf("成真\n");
	}
	if (isprint('>')) {
		printf("成真\n");
	}
	if (isprint('\n')) {
		printf("成真\n");
	}
    else{
        printf("成假\n");
	return 0;
}

结果:

ps:所有控制字符:

|--------|-------------------------|
| 换行符 | \n |
| 水平制表符 | \t |
| 垂直制表符 | \v |
| 回车符 | \r |
| 退格符 | \b |
| 警告/响铃符 | \a |
| 换页符 | \f |
| 空字符 | \0 |
| 反斜杠 | \\ |
| 单引号 | \' |
| 双引号 | \" |
| 问号 | \? |
| 八进制数字 | \nnn |
| 十六进制数字 | \xhh |
| 通用字符名 | \uNNNN\UNNNNNNNN |

ps:所有图形字符:

  • 字母

    • 大写字母: A-Z (ASCII值 65-90)
    • 小写字母: a-z (ASCII值 97-122)
  • 数字

    • 数字字符: 0-9 (ASCII值 48-57)
  • 标点符号

    • 如:!, ", #, $, %, &, ', (, ), *, +, ,, -, ., /, :, ;, <, =, >, ?, @, [, \, ], ^, _, `````, {, |, }, ~
  • 特殊符号

    • 如:@, #, $, %, ^, &, *, (, ), _, +, {, }, |, :, " , <, >, ?, [, ], \, ;, ', ,, ., /, ~
  • 空格字符

    • 空格: (ASCII值 32)
    • 空格也是一个图形字符,但它在输出中不可见,只在字符流中占用空间。

ps:所有空白字符:

|-------|------|
| 空格 | (空格) |
| 水平制表符 | \t |
| 换行符 | \n |
| 回车符 | \r |
| 垂直制表符 | \v |
| 换页符 | \f |
| 空字符 | \0 |

相关推荐
西猫雷婶3 小时前
python学opencv|读取图像(十九)使用cv2.rectangle()绘制矩形
开发语言·python·opencv
liuxin334455663 小时前
学籍管理系统:实现教育管理现代化
java·开发语言·前端·数据库·安全
码农W3 小时前
QT--静态插件、动态插件
开发语言·qt
ke_wu4 小时前
结构型设计模式
开发语言·设计模式·组合模式·简单工厂模式·工厂方法模式·抽象工厂模式·装饰器模式
code04号4 小时前
python脚本:批量提取excel数据
开发语言·python·excel
小王爱吃月亮糖4 小时前
C++的23种设计模式
开发语言·c++·qt·算法·设计模式·ecmascript
hakesashou4 小时前
python如何打乱list
开发语言·python
网络风云4 小时前
【魅力golang】之-反射
开发语言·后端·golang
Want5955 小时前
Java圣诞树
开发语言·python·信息可视化
运维小文5 小时前
python之打印、变量、格式化输出
开发语言·python·python基础·hello world