網站首頁 編程語言 正文
putchar函數介紹:
putchar函數函數幾乎是在整個C語言中最沒有知名度的,它常常被程序員冷漠地對待。至于為什么?原因很簡單!因為它的功能就只是單單輸出一個字符。但為了讀者可以多積累函數,我們還是決定講講這個函數。
搭建環境:
putchar函數的頭文件是標準輸入輸出頭文件(stdio.h),要想使用這個函數我們必須包含這個頭文件,在C語言中我們使用的是#include這個預處理來包含頭文件的。
#include<stdio.h>
因為C語言是個函數式語言,它的程序入口是一個函數。所以包含好頭文件之后,我們需要自己手寫一個main函數這個程序的入口函數,我們這個main函數的數據類型是整形(int型)。隨后函數是需要參數的,我們需要在main函數后的“()”內編寫函數的形式參數(形參),但我們創建的這個函數沒有參數,所以我們可以在main函數的參數內寫上一個“void”關鍵字,表示我們這個函數不需要參數,但我們也可以不在main函數里寫“void”關鍵字,它們的表達效果是一致的。我們可以使用這任意一種方法。函數要有函數體,我們之后寫一對“{}”表示函數的函數體,這樣一個函數的入口就已經搭建完成了,這也是最基本的函數搭建。如下:
#include<stdio.h>
int main(void)
{
}
另外一點函數是需要返回值的(除了void類型外),返回一個值由我們自己決定,這里我們默認返回0。但在某一些編譯器,main方法的返回值是可選的。但嚴苛點來說我們一定要在main函數內返回一個值,在C/C++中我們使用的是return這個語句來返回一個值。
?#include<stdio.h>
int main(void)
{
return 0;
}
函數原型:
現在,我們就可以愉快地使用putchar函數了,我們先來看看putchar這個函數的參數原型,因為我們只要知道函數的參數原型,才可以正確地傳入參數,才能正確地使用函數。在VS2022中,我們可以直接將鼠標光標放在這個函數之上就可輕輕松松查看函數原型。?
我們發現我們需要給putcahr函數傳入一個整形值,它會把這個整形轉換為字符型,隨后輸出到控制臺。我們還發現這個函數的數據類型是int_cdecl型,也就是說這個函數有一個返回值,其實這個返回值返回的是putchar參數轉換為整型的數值,我們先不管這個函數的數據類型,我們先來使用putchar函數輸出一個字符再說。
講解putchar函數:
#include<stdio.h>
int main(void)
{
putchar(65);
return 0;
}
我們在putchar函數內寫入一個整形值65,putcahr函數會自動把65這個數值轉換為數值對應的字符并輸出。它轉換為字符的編碼形式是ASCLL編碼(ASCLL字符集),如果您對ASCLL編碼不太了解,那么請看下圖:
我們試著找到putchar參數內的數值,并找到這個數值對應的字符。我們不難發現這個字符是”A“,我們還發現,ASCLL字符集里面包含了我們在鍵盤上所有的字符,并且每個字符都有對應的數值,每個數值都有對應的字符,譬如66這個數值在ASCLL碼字符集對應的字符是“B”,67在ASCLL碼字符集對應的字符則是“C”。
我們來看看上列程序的輸出結果:
輸出結果:A
由此證明,我們的結論是正確的,putchar函數會在控制臺上輸出這個函數對應的字符。
但您認為C語言中的putchar函數就這么簡單嗎?不不不!它也可以輸出參數是字符型的字符,我們來看看下面一則例子:
#include<stdio.h>
int main(void)
{
putchar('A');
return 0;
}
在上文中我們也講過,putchar函數的參數原型里要求我們填寫的是一個整形,但其實字符型也是整形的一種,我們也可以在putchar的參數列表中填寫一個是字符型的參數。我們在回到代碼中來,現在putchar函數的參數內有一個字符,這個字符是”A“(在C語言中,字符以單引號所包裹)。我們直接可以執行上面的代碼輸出結果與上文中是無異的,它的輸出結果也是字符“A”。
輸出結果:A
putchar的返回值:
接下來我們是時候該講解一下putchar函數的返回值了,我們試著使用一個變量來接收一下putchar函數的返回值,并使用整形的形式輸出這個變量:
#include<stdio.h>
int main(void)
{
int sum = 0;
sum = putchar('A');
printf("%d",sum);
return 0;
}
我們創建了一個整形變量叫“sum”,它的默認值是0,之后使用putchar函數輸出一個字符并使用這個變量接收它的返回值。隨后使用printf函數以整形的形式輸出這個變量。我們一起看看這個程序的輸出結果:
輸出結果:A65
輸出結果的字符“A”是我們使用putchar函數輸出的,而后的65是接收putchar函數的返回值的變量所輸出的結果。我們不難看出這個sum的值是字符A的ASCLL碼值。所以putchar函數的返回值是參數的ASCLL碼值。
總結:
我們學習了putchar函數的使用方法,我們知道了這個函數會把參數轉換為字符后輸出到控制臺上,并且我們還理解了putchar函數的返回值,它的返回值是將參數轉換數值,還有最重要的一點,putchar函數的頭文件是標準輸入輸出頭文件(stdio.h),沒有了這個頭文件,我們就不可以正常使用putchar函數。
原文鏈接:https://blog.csdn.net/m0_68824353/article/details/126000670
相關推薦
- 2022-05-01 C語言實現學籍管理系統_C 語言
- 2022-12-04 C++11中內聯函數(inline)用法實例_C 語言
- 2022-06-30 C語言超詳細講解結構體與聯合體的使用_C 語言
- 2022-07-18 SpringMVC文件上傳功能實現
- 2022-11-16 Python中dataclass庫實例詳解_python
- 2022-06-15 golang?gorm的關系關聯實現示例_Golang
- 2022-09-10 詳解Python腳本如何設置試用期_python
- 2022-12-21 C#?wpf?無邊框窗口添加陰影效果的實現_C#教程
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支