輸入函數(shù)是我們可以說(shuō)是接觸最早的一批函數(shù)了色洞,但是如果不注意的話還是會(huì)遇到很多問(wèn)題贞言,所有我把平時(shí)遇到的一些問(wèn)題和想法寫(xiě)下來(lái)吃警「馄肯定會(huì)有不對(duì)的地方歡迎大家指正。
scanf()
- scanf()這個(gè)函數(shù)是從輸入緩沖區(qū)中讀取數(shù)據(jù)的而不是從鍵盤(pán)上讀取數(shù)據(jù)的
這些在上完學(xué)校的課之后應(yīng)該都知道了酌心,可是還是有很多的細(xì)節(jié)要注意拌消。(原來(lái)我也知道可是在使用時(shí)還是犯錯(cuò)了。
- scanf()這個(gè)函數(shù)在輸入時(shí)遇到安券,空格墩崩,制表符,回車侯勉,和非法輸入時(shí)結(jié)束
注意是輸入結(jié)束而不是函數(shù)結(jié)束鹦筹。
- scanf()在所有數(shù)據(jù)域中均有數(shù)據(jù)且遇到回車時(shí)結(jié)束。
-scanf()只有在是%c這個(gè)格式時(shí)才會(huì)讀取空格和回車中的換行符
看到有的人在博客中寫(xiě)到scanf()在讀取字符串時(shí)址貌,會(huì)丟棄后面的換行符铐拐,然而在試驗(yàn)中發(fā)現(xiàn)依然會(huì)出現(xiàn)‘跳過(guò)’的現(xiàn)象,所已覺(jué)得這個(gè)解釋更合理练对。
其他還有一些使用方法書(shū)上已經(jīng)十分詳細(xì)的講解了遍蟋,就不多贅述了。
下面通過(guò)一些實(shí)例說(shuō)明上面的一些問(wèn)題:
#include<stdio.h>
int main()
{
int a, b;
scanf("%d", &a);
scanf("%d", &b);
printf("%d %d", a, b);
}