2025-03-20 学习记录--C/C++-C 库函数 - toupper()、tolower()、 isspace()、isxdigit()
·
合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻
一、C 库函数 - toupper() ⭐️
C标准库 -<ctype.h>
C标准库的ctype.h头文件提供了一些函数,可用于测试和转换字符,这些函数主要用于检查字符的类型(如字母、数字、空白字符等)以及进行字符大小写转换。
(一)、函数声明 🍭
int toupper(int c);
把小写字母转换为大写字母。 ❀
参数:🎀
c– 这是要被转换为大写的字母。
返回值:🎀
- 如果
c有相对应的大写字母,则该函数返回c的大写字母,否则c保持不变。返回值是一个可被隐式转换为char类型的int值。
举例: 🎀
#include <stdio.h> // 引入标准输入输出库,用于使用 putchar 等函数
#include <ctype.h> // 引入字符处理库,用于使用 toupper 函数
int main() {
int i = 0; // 初始化计数器 i,用于遍历字符串
char str[] = "runoob"; // 定义一个字符数组 str,并初始化为 "runoob"
// 遍历字符串 str
while (str[i]) { // 当 str[i] 不是字符串结束符 '\0' 时,继续循环
putchar(toupper(str[i])); // 将当前字符转换为大写并输出
i++; // 计数器 i 递增,移动到下一个字符
}
return 0; // 程序正常结束
}


二、C 库函数 - tolower() ⭐️
C标准库 -<ctype.h>
C标准库的ctype.h头文件提供了一些函数,可用于测试和转换字符,这些函数主要用于检查字符的类型(如字母、数字、空白字符等)以及进行字符大小写转换。
(一)、函数声明 🍭
int tolower(int c);
把给定的字母转换为小写字母。 ❀
参数:🎀
c– 这是要被转换为小写的字母。
返回值:🎀
- 如果
c有相对应的小写字母,则该函数返回c的小写字母,否则c保持不变。返回值是一个可被隐式转换为char类型的int值。
举例: 🎀
#include <stdio.h> // 引入标准输入输出库,用于使用 putchar 等函数
#include <ctype.h> // 引入字符处理库,用于使用 tolower 函数
int main() {
int i = 0; // 初始化计数器 i,用于遍历字符串
char str[] = "RUNOOB"; // 定义一个字符数组 str,并初始化为 "RUNOOB"
// 遍历字符串 str
while (str[i]) { // 当 str[i] 不是字符串结束符 '\0' 时,继续循环
putchar(tolower(str[i])); // 将当前字符转换为小写并输出
i++; // 计数器 i 递增,移动到下一个字符
}
return 0; // 程序正常结束
}


三、C 库函数 - isspace() ⭐️
C标准库 -<ctype.h>
C标准库的ctype.h头文件提供了一些函数,可用于测试和转换字符,这些函数主要用于检查字符的类型(如字母、数字、空白字符等)以及进行字符大小写转换。
(一)、函数声明 🍭
int isspace(int c);
检查所传的字符是否是空白字符。 ❀
- 标准的空白字符包括:👇🏻
' '(0x20) space (SPC) 空格符'\t'(0x09) horizontal tab (TAB) 水平制表符'\n'(0x0a) newline (LF) 换行符'\v'(0x0b) vertical tab (VT) 垂直制表符'\f'(0x0c) feed (FF) 换页符'\r'(0x0d) carriage return (CR) 回车符
参数:🎀
c– 这是要检查的字符。
返回值:🎀
- 该如果
c是一个空白字符,则该函数返回非零值(true),否则返回0(false)。
举例: 🎀
#include <stdio.h> // 引入标准输入输出库,用于使用 printf 等函数
#include <ctype.h> // 引入字符处理库,用于使用 isspace 函数
int main() {
int var1 = 't'; // 定义变量 var1,并初始化为字符 't'
int var2 = '1'; // 定义变量 var2,并初始化为字符 '1'
int var3 = ' '; // 定义变量 var3,并初始化为空格字符 ' '
// 检查 var1 是否是空白字符
if (isspace(var1)) { // 如果 var1 是空白字符
printf("var1 = |%c| 是空白字符\n", var1); // 输出 var1 是空白字符
} else { // 否则
printf("var1 = |%c| 不是空白字符\n", var1); // 输出 var1 不是空白字符
}
// 检查 var2 是否是空白字符
if (isspace(var2)) { // 如果 var2 是空白字符
printf("var2 = |%c| 是空白字符\n", var2); // 输出 var2 是空白字符
} else { // 否则
printf("var2 = |%c| 不是空白字符\n", var2); // 输出 var2 不是空白字符
}
// 检查 var3 是否是空白字符
if (isspace(var3)) { // 如果 var3 是空白字符
printf("var3 = |%c| 是空白字符\n", var3); // 输出 var3 是空白字符
} else { // 否则
printf("var3 = |%c| 不是空白字符\n", var3); // 输出 var3 不是空白字符
}
return 0; // 程序正常结束
}


四、C 库函数 - isxdigit() ⭐️
C标准库 -<ctype.h>
C标准库的ctype.h头文件提供了一些函数,可用于测试和转换字符,这些函数主要用于检查字符的类型(如字母、数字、空白字符等)以及进行字符大小写转换。
(一)、函数声明 🍭
int isxdigit(int c);
- 检查所传的字符是否是十六进制数字。
- 十六进制一般用数字
0到9和字母A到F(或a~f)表示,其中A~F表示10~15:0123456789abcdefABCDEF。
参数:🎀
c– 这是要检查的字符(是单个字符)。
返回值:🎀
- 如果
c是一个十六进制数字,则该函数返回非零的整数值,否则返回0。
举例: 🎀
#include <ctype.h> // 引入字符处理函数库,包含isxdigit()等函数
#include <stdio.h> // 引入标准输入输出库,包含printf()等函数
int main() {
char c = '5'; // 定义一个字符变量c并初始化为'5'(数字字符)
int result; // 定义一个整型变量result,用于存储函数返回值
// 测试字符'5'是否为十六进制字符
result = isxdigit(c); // 调用isxdigit()检查c是否为十六进制字符(0-9, a-f, A-F)
// 是则返回非零值,否则返回0
// '5'是十六进制字符,result将被设为非零值(通常是1)
// 打印测试结果
printf("%c 传入到 isxdigit() 函数结果为: %d", c, isxdigit(c)); // 直接调用isxdigit()并打印结果
printf("\n"); // 打印换行符,使输出更清晰
c = 'M'; // 将字符变量c重新赋值为'M'(非十六进制字符)
// 测试字符'M'是否为十六进制字符
result = isxdigit(c); // 再次调用isxdigit()
// 'M'不是十六进制字符,result将被设为0
// 打印测试结果
printf("%c 传入到 isxdigit() 函数结果为: %d", c, isxdigit(c)); // 直接调用isxdigit()并打印结果
return 0; // 程序正常结束
}


更多推荐
所有评论(0)