国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C語言gets()和scanf()函數

2019-11-11 02:47:02
字體:
來源:轉載
供稿:網友

來自百度經驗(原文區別2不正確,已更正):

C語言中scanf()和用gets()接收字符串的區別_百度經驗http://jingyan.baidu.com/article/ed15cb1b59a87d1be2698172.html

區別1:scanf()可以同時接受多個字符串,而gets()一次只能接受一個字符串。

 例如:scanf("%s %s",a,b);就可以同時給a和b兩個字符串指針賦值,getchar就不可以;

區別2:scanf()一定條件下能接受帶空格的字符串,而gets()能接受帶空格的字符串。

scanf("%c",a);函數遇到空格可以識別,但是"%s"格式不可以識別空格和換行,空格或者換行表示字符串輸入的結束;

gets()函數是可以識別空格的;

區別3:scanf()不能接受長度為0的字符串,會自動忽略開頭的所有空格,并且以空格、換行符、回車結束輸入。而gets()能接受長度為0的字符串,不會自動忽略開頭的所有空格或回車,并以回車結束。

補充:scanf()完一個整數后,如果要用gets(),需要先用getchar()接受整數后的換行符

結論:如果要讀入一個帶空格符的字符串時用gets()比較方便, 如非要用scanf(),必須手動給字符串的末尾賦值為'/0',如果不帶空格,那么gets()和scanf()效果是一樣的。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 行唐县| 大埔县| 孝义市| 陵川县| 蒙城县| 舞钢市| 上虞市| 乡城县| 大洼县| 南靖县| 德格县| 夏邑县| 郯城县| 新沂市| 闵行区| 游戏| 北辰区| 丹棱县| 铜陵市| 长海县| 博湖县| 金寨县| 鄢陵县| 陕西省| 池州市| 尤溪县| 敦化市| 陵川县| 崇文区| 商南县| 绿春县| 贵溪市| 南投县| 舞钢市| 黄骅市| 城市| 平顺县| 望奎县| 荥阳市| 墨竹工卡县| 怀集县|