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

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; // 程序正常结束
}

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

相关文章:

  • Python(冒泡排序、选择排序、插入法排序、快速排序,算法稳定性)
  • 双碳战略下的电能质量革命:解码电力系统的健康密码
  • 服务的拆分数据的迁移
  • Springboot项目搭建(9)-分页与文件上传
  • 中国历史文化名城分布矢量数据
  • 一份1000元机器人开发资金计划表
  • QT编程之PCM音频处理
  • ruoyi 小程序使用笔记
  • 基于CVX优化器的储能电池调峰调频算法matlab仿真
  • P1659 [国家集训队] 拉拉队排练 (manacher 算法)
  • Sampling – Model Context Protocol Specification
  • 缓存监控治理在游戏业务的实践和探索
  • Cursor设置中文教程----两种方法【简单】
  • 统计领域英语专业词汇补充
  • 如何用AI轻松实现PPT自动生成,让工作更高效
  • Qt 控件概述 QLabel
  • Unity-VR中使用手柄点击UI
  • c语言 逆序存放并输出的题【基础】
  • hackmyvm-connection
  • 32、如何解决vector中删除元素导致的迭代器失效问题?
  • 墨西哥海军帆船纽约撞桥事故已致2人死亡19人受伤
  • 发射后失联,印度地球观测卫星发射任务宣告失败
  • 被围观的“英之园”,谁建了潮汕天价违建?
  • 一个留美学生的思想转向——裘毓麐的《游美闻见录》及其他
  • 受贿1.29亿余元,黑龙江省原副省长王一新被判无期
  • 深圳南澳码头工程环评将再次举行听证会,项目与珊瑚最近距离仅80米