欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C/C++ getchar函數(shù)

目錄

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、微信平臺小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了宜秀免費(fèi)建站歡迎大家使用!

  • 一.getchar 函數(shù)簡介
    • 1.getchar 原理
    • 2.getchar 函數(shù)聲明
    • 3.getchar 使用場景
  • 二.getchar 函數(shù)使用
  • 三.getchar 函數(shù)妙用
  • 四.猜你喜歡

零基礎(chǔ) C/C++ 學(xué)習(xí)路線推薦 : C/C++ 學(xué)習(xí)目錄 >> C 語言基礎(chǔ)入門

一.getchar函數(shù)簡介

1.getchar 原理

getchar 函數(shù)用于獲取用戶輸入,達(dá)到人機(jī)交互的目的,當(dāng)程序調(diào)用 getchar 時,程序就等著用戶鍵盤按鍵并將用戶輸入的字符被存放在鍵盤緩沖區(qū)中。直到用戶按回車為止(回車字符也放在緩沖區(qū)中),當(dāng)用戶鍵入回車之后,getchar 才開始從緩沖區(qū)中讀入字符,例如:用戶按下鍵盤的 a 鍵,那么 getchar 函數(shù)就返回字符 a

2.getchar 函數(shù)聲明

該函數(shù)聲明在`stdio.h`頭文件中,使用的時候要包含stdio.h頭文件。如:

#include<stdio.h>
/*
*函數(shù)描述:獲取控制臺用戶的輸入字符
*
*返回值:返回用戶輸入值對應(yīng)的 char 值
*/
char getchar(void)

C 語言中對于控制臺程序,我們一般通過 printf 函數(shù)輸出信息到控制臺窗口顯示,getchar 函數(shù)則是可以從控制臺獲取用戶的輸入,而達(dá)到和用戶交互的目的,注意兩者的區(qū)別!

3.getchar 使用場景

1.可以和用戶交互,獲取用戶的鍵盤輸入,例如:用戶按下鍵盤的 a 鍵,那么 getchar 函數(shù)就返回字符 a ;

2.對于 win32 控制臺而言,getchar 函數(shù)和 system("pause") 函數(shù)作用類似,解決控制臺黑屏窗口一閃而過的問題;

二.getchar函數(shù)使用

/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C/C++ getchar函數(shù)
//@Time:2021/08/04 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!
/******************************************************************************************/

#include "stdafx.h"
#include "stdio.h"
#include "windows.h"



int _tmain(int argc, _TCHAR* argv[])
{

	printf("請輸入字符:\n");
	char c = getchar();
	printf("獲取到您輸入的字符:%c\n",c);
	system("pause");
	return 0;
}

/*

請輸入字符:
w
獲取到您輸入的字符:w
請按任意鍵繼續(xù). . .

*/

因?yàn)槲逸斎氲氖?w ,所以 getchar 函數(shù)返回的就是 w ,你輸入任意按鍵都是可以的;值得注意的是:

  • 1.getchar 函數(shù)返回的字符對應(yīng)的占位符是 %c;
  • 2.getchar 函數(shù)只能獲取單個字符;
  • 3.回車鍵'\n'也在緩沖區(qū)中,并作為最后一個字符被 getchar 函數(shù)取出;

如果在回車按下之前輸入了多個字符,所有的字符都會被存在緩沖區(qū)中,`getchar 函數(shù)會默認(rèn)返回第一個字符,例如:我們在回車之前輸入了 ,如何把緩沖區(qū)的所有字符都獲取到呢?

/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C/C++ getchar函數(shù)
//@Time:2021/08/03 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!
/******************************************************************************************/

#include "stdafx.h"
#include "stdio.h"
#include "windows.h"



int _tmain(int argc, _TCHAR* argv[])
{

	char c = getchar();
	for (;;) //死循環(huán)
	{

		if (c == '\n') //檢查是不是回車鍵
		{
			printf("最后一個字符啦 %c \n", c);
			break;
		}
		else
		{
			printf("獲取緩沖區(qū)字符 %c \n", c);
			c = getchar();
		}
	}

	system("pause");
	return 0;
}

/*

獲取緩沖區(qū)字符 1
獲取緩沖區(qū)字符 2
獲取緩沖區(qū)字符 3
獲取緩沖區(qū)字符 4
獲取緩沖區(qū)字符 5
最后一個字符啦

請按任意鍵繼續(xù). . .

*/

由上面代碼可以明白,回車'\n'按鍵是緩沖區(qū)中最后一個字符;

三.getchar函數(shù)妙用

一般控制臺程序在運(yùn)行的時候,只看到一個黑窗口一閃而過,具體顯示的什么根本來不及看,在前面的文章中我們介紹了可以通過 system 函數(shù)解決這個問題,而今天我們使用 getchar 函數(shù)一樣能完成這個功能,因?yàn)?strong>在調(diào)用 `getchar 函數(shù)之后,程序回一直等待用戶輸入直到按下回車之后程序才會繼續(xù)執(zhí)行,示例代碼如下:

/******************************************************************************************/
//@Author:猿說編程
//@Blog(個人博客地址): www.codersrc.com
//@File:C語言教程 - C/C++ getchar函數(shù)
//@Time:2021/08/03 08:00
//@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!
/******************************************************************************************/


#include "stdafx.h"
#include "stdio.h"



int _tmain(int argc, _TCHAR* argv[])
{

	printf("猿說編程 - python和C++教程\n");
	getchar();
	printf("程序結(jié)束\n");
	return 0;
}
/*
猿說編程 - python和C++教程
*/

運(yùn)行這個程序,控制臺輸出了第一個 printf 函數(shù)的內(nèi)容:猿說編程 – python和C++教程 ,而第二個 printf 函數(shù)的內(nèi)容: 程序結(jié)束 并沒有顯示到控制臺,是因?yàn)?getchar 函數(shù)在等待我們輸入任意字符并按下回車;

當(dāng)我們按下鍵盤任意按鍵并敲回車之后,程序立即輸出第二個 printf 函數(shù)的內(nèi)容: **程序結(jié)束 **,然后主函數(shù) `main 結(jié)束,程序退出,控制臺窗口消失;

四.猜你喜歡

  1. C 語言 數(shù)組下標(biāo)越界和內(nèi)存溢出區(qū)別
  2. C 語言 使用指針遍歷數(shù)組
  3. C 語言 指針和數(shù)組區(qū)別
  4. C 語言 指針數(shù)組和數(shù)組指針區(qū)別
  5. C 語言 野指針
  6. C 語言 函數(shù)值傳遞和址傳遞
  7. C 語言 函數(shù)不定長參數(shù)
  8. C 語言 函數(shù)指針
  9. C 語言 指針函數(shù)
  10. C 語言 回調(diào)函數(shù) callback
  11. C 語言 #pragma once
  12. C 語言 #include <> 與 #include “” 區(qū)別
  13. C 語言 const 修飾函數(shù)參數(shù)
  14. C 語言 const 和 define 區(qū)別
  15. C 語言 #運(yùn)算符
  16. C 語言 ##運(yùn)算符
  17. C 語言 __VA_ARGS__
  18. C 語言 ##__VA_ARGS__
  19. C 語言 函數(shù)不定長參數(shù) ##__VA_ARGS__經(jīng)典案例
  20. C 語言 va_start / va_end / va_arg 自定義 printf 函數(shù)
  21. C 語言 main 函數(shù)
  22. C 語言 main 函數(shù)參數(shù) main(int argc, char *argv[])
  23. C 語言 局部變量
  24. C 語言 全局變量
  25. C 語言 全局變量和局部變量區(qū)別
  26. C 語言 static
  27. C 語言 extern
  28. C/C++ putchar 函數(shù)
  29. C/C++ getchar 函數(shù)

未經(jīng)允許不得轉(zhuǎn)載:猿說編程 ? C/C++ getchar 函數(shù)

本文由博客 - 猿說編程 猿說編程 發(fā)布!

網(wǎng)站欄目:C/C++ getchar函數(shù)
路徑分享:http://chinadenli.net/article4/dsoipie.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)做網(wǎng)站、營銷型網(wǎng)站建設(shè)、網(wǎng)站制作、動態(tài)網(wǎng)站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司