您的位置:網站首頁 > 電器維修資料網 > 正文 >
嵌入式學習筆記--scanf使用常見問題及解決方法
來源: 日期:2013-12-12 11:14:52 人氣:標簽:
第一,連續輸入兩個或多個字符的時候,第二次輸入直接跳過了如:
int main()
{
char a,b;
scanf(“%c”,&a);
scanf(“%c”,&b);
return 0;
}
輸入 a回車 然后就退出了。
這個問題有很多說法有說是緩沖區沒有清除,有說stdin這個流的問題,這里我們不去追究,這里介紹幾個解決這種問題的方法:
int main()
{
char a,b;
scanf(“n%c”,&a);
scanf(“n%c”,&b);或 scanf(“ %c”,&b);%c前有空格
return 0;
}
這次再編譯一下就沒有問題了。
第二,使用scanf()函數輸入一句話的時候,如:
int main()
{
char string[50] ;
scanf(“%s”,string);
printf(“%sn”,string);
return 0;
}
輸入:hello world!
結果:hello
顯然這個結果沒有達到我們的要求。
解決方法:
int main()
{
char string[50] ;
scanf(“%[^n]”,string);
printf(“%sn”,string);
return 0;
}
【看看這篇文章在百度的收錄情況】
相關文章
- 上一篇: RW7-10型戶外跌落式交流高壓熔斷器安裝使用
- 下一篇: 基于C語言的RS232串行接口通信實現