c语言中的字符函数

1.字符分类函数

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

可能你看这些感觉很懵,我以islower举例

复制代码
#include<ctype.h>
int main()
{
	int ret=islower('A');
	printf("%d ", ret); //0
	ret = islower('a');
	printf("%d ", ret);//非0
	ret = islower('0');
	printf("%d ", ret);//0
	return 0;
}

islower是判断是否为小写的,但是'A'是大写的,所以返回0。其他也是如此,反正符合判断返回非0,不符合判断返回0.

练习:写一个代码,将字符串中的小写字母改为大写,其他字符不变

提示:小写字母的ASCII-32=大写字母的ASCII

复制代码
int main()
{
	char arr[] = "I am a Student";
	int i = 0;
	while (arr[i] != '\0')
	{
		if (islower(arr[i]))
		{
			arr[i] = arr[i] - 32;
		}
		i++;
	}
	printf("%s", arr);
	return 0;
}

2.字符转换函数

c语言中提供了两个字符转换函数,头文件也是ctype.h

1 int tolower ( int c)//将传进去的参数大写改为小写

2 int toupper ( int c)//将传进去的参数小写改为大写

上面的代码,我们将小写改为大写,是-32的操作,有了转换字符,我们可以直接用toupper函数

复制代码
int main()
{
	char arr[] = "I am a Student";
	int i = 0;
	while (arr[i] != '\0')
	{
		if (islower(arr[i]))
		{
			arr[i] = toupper(arr[i]);
		}
		i++;
	}
	printf("%s", arr);
	return 0;
}
相关推荐
云泽80834 分钟前
从零吃透 C++ 异常:抛出捕获、栈展开、异常重抛与编码规范详解
开发语言·c++·代码规范
灯澜忆梦37 分钟前
GO---可见性规则
开发语言·golang
逝水无殇1 小时前
C# 文件的输入与输出详解
开发语言·数据库·后端·c#
这是个栗子2 小时前
前端开发中的常用工具函数(八)
开发语言·前端·javascript
凤凰院凶涛QAQ2 小时前
《Java版数据结构 & 集合类剖析》栈与队列:“push/pop 是栈的灵魂,offer/poll 是队列的骨架——四组 API,两种人生”
java·开发语言·数据结构
研☆香2 小时前
为什么变量声明在赋值前也能使用?—— 深入理解 JavaScript 变量提升与作用域
开发语言·前端·javascript
右耳朵猫AI2 小时前
PHP周刊2026W28 | 安全更新、Laravel 13.18、Twig 3.28
开发语言·php·laravel
second602 小时前
第一部分:快速上手 —— 建立 C++ 基本语法与编程范式
开发语言·c++
郝学胜-神的一滴2 小时前
算法实战:最小k个数——大顶堆的优雅解法
开发语言·数据结构·c++·python·程序人生·算法·排序算法
bksczm3 小时前
linux之线程概念和控制
linux·开发语言·c++