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;
}
相关推荐
艾伦_耶格宇2 小时前
【AI】-4 OpenCode Go 接入 Obsidian 完整指南
运维·开发语言·人工智能·agent·opencode
旋生万物2 小时前
【终极实战】用Python从零“生成“一个宇宙:螺旋干涉模型的代码实现
开发语言·前端·人工智能·react.js·php·wpf
码行山野赴时序归途3 小时前
算法效率的度量(上):时间复杂度中的对数思维
c语言·数据结构·算法
16月6日-晴3 小时前
Java面向对象进阶—多态
java·开发语言
冯汉栩4 小时前
Swift Control RollingCountdownView(动画倒计时)
开发语言·ios·swift
lisanmengmeng4 小时前
搭建elk环境并接入frostmourne,实现监控报警效果(五)
开发语言·elk·日志·日志监控
oh,huoyuyan4 小时前
JS 动态网页抓不到?试试火车采集器网页抓取工具
开发语言·javascript·ecmascript
风流 少年4 小时前
hutool
java·服务器·开发语言
单片机仿真设计5 小时前
【proteus仿真】基于 STM32 的智能垃圾桶设计(仿真图+程序)
c语言·stm32·stm32单片机·proteus·毕设·仿真
一木 之林5 小时前
四、STL容器与数据结构
开发语言·数据结构·c++