C语言 之 字符相关函数

news/2024/10/18 8:32:30/

文章目录

  • 字符分类函数
  • 字符转换函数

本章内容主要讲的是c语言中的字符相关的一些函数的作用用法和使用

为了方便我们对字符的各种操作,C语⾔标准库中提供了⼀系列库函数,我们大概可以根据其功能分成两类函数

字符分类函数

C语言中有一系列函数是专门用于字符分类的,也就是判断一个字符属于是属于什么类型的字符
这些函数的使用都需要包含一个头文件: ctype.h

函数若参数符合下列条件则返回真
iscntrl任何控制字符
isspace空白字符: 空格和‘ ’ ,换页‘\f’,换行’\n’,回车’\r’,制表符’\t’或者垂直制表符’\v’
isdigit十进制数字 0-9
isxdigitl十六进制数字,包括所有十进制数字,小写字母a-f,大写字母A-F
islowerl小写字母a-z
isupper大写字母A-Z
isalpha字母a-z或A-Z
isalnum字母或者数字,a-z, A-Z,0-9
ispunct标点符号,任何不属于数字或者字母的图形字符(可打印)
isgraph任何图形字符
isprint任何可打印字符,包括图形字符和空白字符

例如 :我们来使用一下函数 isdigit

在这里插入图片描述

我们这里的字符是十进制数字7,所以返回值为真,即非0
在这里插入图片描述

那么如果我们将字符7 换成 字符a
在这里插入图片描述

那么输出的结果为假,即为0
在这里插入图片描述
其它函数的用法都是类似的,可以自行去实践使用


例题:

写⼀个代码,将字符串中的小写字母转大写,其他字符不变。

#include <stdio.h>
#include <ctype.h>
int main() 
{ 	int i = 0; 	char str[] = "Hello Fallzzzzz\n"; 	char c; 	while (str[i]) 	{ 		c = str[i]; 		if(islower(c)){c -= 32; 		} 			putchar(c); 		++i; 	} 	return 0; 
} 

使用我们学习到的知识,islower(c) 能够判断一个字符是否是a-z,如果是则为真,则进入到if语句中。
这里的putchar是输出字符的函数,即一个字符一个字符的输出
所以输出结果为:
在这里插入图片描述

字符转换函数

C语⾔提供了2个字符转换函数:

int tolower ( int c ); //将参数传进去的大写字母转小写
int toupper ( int c ); //将参数传进去的小写字母转大写

再根据上面的例题,上面的例题中我们想要将字符从小写转化为大写,使用的是c -= 32; 的方法,那我们有了转换函数的话,那当然就可以直接使用啦!

例题:

#include <stdio.h>
#include <ctype.h>
int main()
{int i = 0;char str[] = "Hello Fallzzzzz\n";char c;while (str[i]){c = str[i];if (islower(c)){c = toupper(c);  //使用转换函数}putchar(c);++i;}return 0;
}

这样能达到同样的输出效果:
在这里插入图片描述

以上就是字符相关的库函数啦,适当的使用这些库函数能够提高我们的工作效率


http://www.ppmy.cn/news/1514797.html

相关文章

QT:Qt与ECharts

介绍ECharts ECharts是一款基于JavaScript的数据可视化图表库&#xff0c;由百度团队最初开发&#xff0c;并在2018年初捐赠给Apache基金会&#xff0c;成为ASF孵化级项目。随着项目的不断发展&#xff0c;ECharts在2021年1月26日正式毕业&#xff0c;成为Apache顶级项目 链接…

IOS半越狱工具nathanlr越狱教程

简介 nathanlr 是一款半越狱工具&#xff0c;不是完整越狱。 半越狱只能使用一些系统范围的插件。 无法做到完整越狱 Dopamine 越狱一样插件兼容性。 nathanlr支持 iOS 16.5.1 – 16.6.1 系统。 支持 A12 及以上设备。 肯定有人问&#xff0c;为什么仅仅支持这些系统&#xff…

【架构-26】BPEL

什么是BPEL BPEL&#xff08;Business Process Execution Language&#xff0c;业务流程执行语言&#xff09;是一种用于编排和整合不同的 Web 服务以构建复杂业务流程的语言。 主要作用 流程编排&#xff1a;可以将多个独立的业务服务组合成一个连贯的业务流程。例如&#x…

【comfyui 】comfyui mac配置教程

comfyui mac配置教程 1. 安装工程依赖与环境配置2. 安装Comfyui3. Comfyui模型下载与运行 1. 安装工程依赖与环境配置 首先&#xff0c;我们找到Mac电脑的终端并打开&#xff0c;我们复制下列代码并粘贴到终端&#xff0c;然后回车&#xff0c;即可开始安装Xcode工具。 xcode…

EXCEL 分组后找出满足条件的行拼接起来

Excel某表格有四列&#xff0c;其中第2列是分组列。 ABCD11a1yet22a2done33a3yet44b1done55b2done66b3done77b4yet88b5done 现在要按第2列分组&#xff0c;找到每组第4列等于"done"的行&#xff0c;将这些行的第3列用逗号拼起来&#xff0c;再与分组名、行号组成新…

使用Jupyter Notebook实现Python编程

目录 1. 安装Anaconda 2. 启动Jupyter Notebook 3. 调试Python代码: 4. 定义一个简单的python类 ​5. 在控制台运行代码,并从命令行接受参数 6. 调用其他py文件中的类 ​7. conda环境切换和迁移 1. 安装Anaconda 到Anaconda官网下载安装包:Download Anaconda Distri…

打印网格(while and for)(if……)

可用不同循环嵌套来解决此问题&#xff1a; 分为四部分——奇数行起始位置的加号、奇数行“-”、偶数行的“| ”以及右下角最后的加号。 #include<bits/stdc.h> using namespace std; int map_n,map_m; signed main(){cin>>map_n>>map_m;int pmap_n;while(…

C语言破墙镐对称飞迷宫

目录 开头程序程序的流程图程序游玩的效果(gif)结尾 开头 大家好&#xff0c;我叫这是我58。 程序 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <stdlib.h> #include <Windows.h> enum WASD {W,A,S,D }; void printmaze(const char s…