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"// 遍歷字符串 strwhile (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"// 遍歷字符串 strwhile (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.pswp.cn/news/898441.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/898441.shtml
英文地址,請注明出處:http://en.pswp.cn/news/898441.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

LoRaWAN技術解析

LoRaWAN&#xff08;Long Range Wide Area Network&#xff09;是一種基于 LoRa&#xff08;Long Range&#xff09;技術的低功耗廣域網絡協議&#xff0c;專為物聯網&#xff08;IoT&#xff09;設備的無線通信而設計。它是一種開放的、標準化的通信協議&#xff0c;支持大規模…

織夢DedeCMS如何獲得在列表和文章頁獲得頂級或上級欄目名稱

獲得頂級或二級欄目的名稱&#xff0c;都需要修改php文件&#xff0c;修改的文件【/include/common.func.php】將代碼插入到這個文件的最下面即可&#xff1b; 一、獲得當前文章或欄目的【頂級欄目】名稱 1、插入頂級欄目代段 //獲取頂級欄目名 function GetTopTypename($id…

虛幻基礎:ue自定義類

文章目錄 Gameplay Tag&#xff1a;ue標簽類創建&#xff1a;其他-數據表格-gameplaytag安裝&#xff1a;項目設置&#xff1a;gamePlayTag&#xff1a;gamePlay標簽列表使用&#xff1a;變量類型&#xff1a;gamePlayTag primary data asset&#xff1a;ue數據類&#xff1a;通…

易語言模擬真人鼠標軌跡算法

一.簡介 鼠標軌跡算法是一種模擬人類鼠標操作的程序&#xff0c;它能夠模擬出自然而真實的鼠標移動路徑。 鼠標軌跡算法的底層實現采用C/C語言&#xff0c;原因在于C/C提供了高性能的執行能力和直接訪問操作系統底層資源的能力。 鼠標軌跡算法具有以下優勢&#xff1a; 模擬…

Matplotlib 柱形圖

Matplotlib 柱形圖 引言 在數據可視化領域&#xff0c;柱形圖是一種非常常見且強大的圖表類型。它能夠幫助我們直觀地比較不同類別或組之間的數據大小。Matplotlib&#xff0c;作為Python中最受歡迎的數據可視化庫之一&#xff0c;提供了豐富的繪圖功能&#xff0c;其中包括創…

sparksql的Transformation與 Action操作

Transformation操作 與RDD類似的操作 map、filter、flatMap、mapPartitions、sample、 randomSplit、 limit、 distinct、dropDuplicates、describe&#xff0c;而以上這些都是企業中比較常用的&#xff0c;這里在一個文件中統一論述 val df1 spark.read.json("src/m…

微軟Data Formulator:用AI重塑數據可視化的未來

在數據驅動的時代,如何快速將復雜數據轉化為直觀的圖表是每個分析師面臨的挑戰。微軟研究院推出的開源工具 Data Formulator,通過結合AI與交互式界面,重新定義了數據可視化的工作流。本文將深入解析這一工具的核心功能、安裝方法及使用技巧,助你輕松駕馭數據之美。 一、Dat…

20分鐘上手DeepSeek開發:SpringBoot + Vue2快速構建AI對話系統

20分鐘上手DeepSeek開發&#xff1a;SpringBoot Vue2快速構建AI對話系統 前言 在生成式AI技術蓬勃發展的今天&#xff0c;大語言模型已成為企業智能化轉型和個人效率提升的核心驅動力。作為國產大模型的優秀代表&#xff0c;DeepSeek憑借其卓越的中文語義理解能力和開發者友…

神經網絡中層與層之間的關聯

目錄 1. 層與層之間的核心關聯&#xff1a;數據流動與參數傳遞 1.1 數據流動&#xff08;Forward Propagation&#xff09; 1.2 參數傳遞&#xff08;Backward Propagation&#xff09; 2. 常見層與層之間的關聯模式 2.1 典型全連接網絡&#xff08;如手寫數字分類&#xf…

本地部署deepseek-r1建立向量知識庫和知識庫檢索實踐【代碼】

目錄 一、本地部署DS 二、建立本地知識庫 1.安裝python和必要的庫 2.設置主目錄工作區 3.編寫文檔解析腳本 4.構建向量數據庫 三、基于DS,使用本地知識庫檢索 本地部署DS,其實非常簡單,我寫了一篇操作記錄,我終于本地部署了DeepSeek-R1(圖文全過程)-CSDN博客 安裝…

String、StringBuffer、StringBuiler的區別

可變性 String是不可變的&#xff0c;這是因為String內部用于存儲數據的char[]數組用了final關鍵字修飾&#xff0c;而且是private的&#xff0c;并且沒有對外提供修改數組的方法。 StringBuffer和StringBuilder是可變的&#xff0c;它們內部的char數組沒有用final關鍵字修飾。…

Certd自動化申請和部署SSL證書并配置https

服務器使用的華為云&#xff0c;之前SSL證書通過配置Cloudflare的DNS實現的&#xff0c;最近華為云備案提示需修改解析至境內華為云IP&#xff0c;若解析境外IP&#xff0c;域名無需備案&#xff0c;需注銷或取消接入備案信息&#xff0c;改為使用Certd自搭建證書管理工具&…

git tag以及git

git tag 以及git 一、先說收獲吧 1. git bash 在windows上 類似于linux的bash提供的shell命令行窗口&#xff0c;可以執行很多linux命令&#xff0c;cd pwd ls vim cat touch mkdir&#xff0c;還可以用正則匹配查看標簽。相當于在windows上裝了一個小的linux。git init myproj…

ESP8266通過AT指令配置雙向透傳

一、固件燒錄 IO0接地后上電&#xff0c;進入燒錄模式&#xff0c;燒錄完成后去掉即可 二、參數配置 1、服務器端 ATCWMODE_DEF2 ATCWSAP_DEF"ESP8266","12345678",5,3 ATSAVETRANSLINK1,"192.168.4.2",9090,"UDP",8080 2、客戶端…

【3D模型】【游戲開發】【Blender】Blender模型分享-獅頭木雕附導入方法

導入方法&#xff1a; [Blender] 如何導入包含紋理的 .blend 模型文件 在 3D 建模和渲染工作中&#xff0c;Blender 是一款功能強大的免費開源軟件。很多時候&#xff0c;我們需要導入 .blend 后綴的模型文件&#xff0c;同時確保紋理&#xff08;textures&#xff09;文件夾…

C# | 超簡單CSV表格讀寫操作(輕松將數據保存到CSV,并支持讀取還原)

C# | 超簡單CSV表格讀寫操作&#xff08;輕松將數據保存到CSV&#xff0c;并支持讀取還原&#xff09; 文章目錄 C# | 超簡單CSV表格讀寫操作&#xff08;輕松將數據保存到CSV&#xff0c;并支持讀取還原&#xff09;一、上位機開發中的CSV應用背景二、CSV讀寫實戰教學1. 基本對…

Git push后撤銷提交

一、介紹 當某次更改完工程后&#xff0c;push了本地倉庫到云端&#xff0c;但是發現有地方改錯了&#xff0c;想撤銷這次推送&#xff0c;或者某次提交就更改了很小一部分&#xff0c;想和本地這次修改的合并為一次推送&#xff0c;省的在云端顯示特別多次提交&#xff0c;顯得…

Unity導出WebGL,無法顯示中文

問題&#xff1a;中文無法顯示 默認字體無法顯示中文 在編輯器中設置了中文和英文的按鈕&#xff0c;中文按鈕無法顯示 導出后無法顯示中文 解決辦法&#xff1a; 自己添加字體&#xff0c;導入項目&#xff0c;并引用 示例 下載一個字體文件&#xff0c;這里使用的阿里…

閱讀《Vue.js設計與實現》 -- 02

接上一篇文章&#xff1a;閱讀《Vue.js設計與實現》 – 01 文章目錄 第二章提升用戶的開發體驗tips 控制框架代碼的體積Tree-Shaking副作用 框架應該輸出怎樣的構建產物&#xff1f;注意這兩個文件有什么區別&#xff1f; 特性開關如何實現&#xff1f; 處理錯誤TS支持 第二章 …

Mac:Ant 下載+安裝+環境配置(詳細講解)

&#x1f4cc; 下載 Ant 下載地址&#xff1a;https://ant.apache.org/bindownload.cgi &#x1f4cc; 無需安裝 Apache官網下載 Ant 壓縮包&#xff0c;無需安裝&#xff0c;下載解壓后放到自己指定目錄下即可。 按我自己的習慣&#xff0c;我會在用戶 jane 目錄下新建了個…