字符分类函数

目录

一.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 |

相关推荐
今天背单词了吗9801 分钟前
算法学习笔记:8.Bellman-Ford 算法——从原理到实战,涵盖 LeetCode 与考研 408 例题
java·开发语言·后端·算法·最短路径问题
CoderPractice7 分钟前
C#控制台小项目-飞行棋
开发语言·c#·小游戏·飞行棋
Coding小公仔15 分钟前
LeetCode 151. 反转字符串中的单词
开发语言·c++·算法
程序猿阿伟17 分钟前
《声音的变形记:Web Audio API的实时特效法则》
开发语言·前端·php
墨小傲17 分钟前
基于Linux下的vscode c/c++开发环境搭建详细教程
linux·c语言·vscode
Humbunklung1 小时前
Rust方法语法:赋予结构体行为的力量
开发语言·后端·rust
萧曵 丶1 小时前
Rust 内存结构:深入解析
开发语言·后端·rust
算法练习生1 小时前
Qt核心类QWidget及其派生类详解
开发语言·c++·qt
阿捏利1 小时前
【加解密与C】非对称加解密(二)ELGamel
c语言·加解密·elgamel
1024小神1 小时前
tauri项目在windows上的c盘没有权限写入文件
c语言·开发语言·windows