新手對於c getchar 的重複使用

2021-09-27 19:57:50 字數 663 閱讀 2408

小白第一次寫部落格,勿噴。

本人初學c,剛剛自學乙個月,經常努力刷題熟悉技巧(好想找個便宜師傅),刷到如下題時百思不得其解;

#include

main()

要求輸入"qwert?" 回車 求結果

答案為"vfsu"

q呢?經過一番猜測可能是c=getchar()覆蓋了,但是找不到證據。

最後終於在csdn裡面兩篇文章裡找到了:

第一次寫不會放鏈結 一段在:66kevin文章的getchar()系列;

二段在caohu2010文章的getchar()函式的使用事項;

解析:getchar()是stdio.h中的庫函式,它的作用是從stdin流中讀入乙個字元,也就是說,如果stdin有資料的話不用輸入它就可以直接讀取了,第一次getchar()時,確實需要人工的輸入,但是如果你輸了多個字元,以後的getchar()再執行時就會直接從緩衝區中讀取了。

假如getchar()是從鍵盤中讀取字元,它一次接受乙個字元;如果一次敲的字元多於乙個,包括回車字元,它會將剩下的字元存入快取中,下次繼續執行。

如果兩個getchar,第二個是從快取中讀取的所以他也就是第二個字元了(多個同樣適用)。

大佬指點一般用來吸收換行符的。

可能有點雞肋,但了解它本來的面目是真的開心。

新手對於ros control 的一些認識

我認為,對於ros control的基本作用,就是把應用與實際機械人連線起來,包含一系列控制器介面 傳動裝置介面 硬體介面 控制器工具箱等等。它的總體框架 如下圖 就是對應不同的控制器,提供不同的介面,但是這樣藉口不同,針對不同的介面寫不同的 實在太過於繁瑣,於是,它又自己建立了乙個硬體抽象層,提高...

原創對於新手來說有點「蛋疼」

估計好多新人在學習seo以前,聽到的大多數人講的 seo很好做的,只要會開電腦就行。結果呢?好多人在剛學的時候,總是想在網上多學點有關seo的知識,但是花了幾天時間,認真看了幾個老師的教程,傻眼了 好多人把 zac老師的 seo實戰教學 講成神書,但是在一些新人看來,這些無非是天書。或者說,他在用他...

從頭認識C getchar()的返回值

getchar 函式原型為int getchar void getchar 函式出錯會返回eof。如下例子 char ch while ch getchar eof eof需要的位數比字元型值所能提供的位數要多,這也是getchar返回乙個整形值而不是字元值的原因。然而,把getchar的返回值首先...