当前位置: 首页 > article >正文

2025-03-20 学习记录--C/C++-C 库函数 - toupper()、tolower()、 isspace()

合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。💪🏻

一、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),否则返回 0false)。
举例: 🎀
#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; // 程序正常结束
}

在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/594273.html

相关文章:

  • 用vue3显示websocket的状态
  • yum软件包乾坤大挪移(Yum Package Qiankun Great Migration)
  • 传统服务部署、虚拟化部署与云原生部署资源消耗对比与优化指南
  • SVN完全指南
  • 【Java/数据结构】队列(Quque)
  • java NIO中的FileSystems工具类可以读取本地文件系统,ZIP/JAR等,无需解压处理,还可以复制文件
  • Unity 云渲染本地部署方案
  • 大白话详细解读函数之柯里化
  • 策略模式 vs. 工厂模式:对比与分析
  • 【git】git管理规范--分支命名规范、CommitMessage规范
  • Microchip AN1477中关于LLC数字补偿器的疑问
  • k8s搭建kube-prometheus
  • 如何制作一个手机用的电动3D扫描转盘
  • Nginx面试题
  • LoRaWAN技术解析
  • eclipse运行配置,希望带参数该怎么配置
  • 基于springboot的母婴商城系统(018)
  • Spring Boot 异步返回对象深度解析
  • word插入Mathtype公式居中和自动更新
  • dify内置数据库PostgreSQL的时间字段的值跟当前时间对不上,如何解决?