c語言scanf 函式和gets 函式的區別

2021-07-07 09:10:24 字數 451 閱讀 3829

今天在學習c語言時,發現了作者在輸入字串時用到了兩種表示,經查詢後認識到了其中的一些區別。

scanf() 函式在遇到空格tab或回車時會認為是輸入結束,但是通過gets()進行字串輸入輸出時,可以輸入有空格的字串!

下面是它倆的一些區別和引數:

1.scanf()

所在標頭檔案:stdio.h

語法:scanf("格式控制字串",變數位址列表);

接受字串時:scanf("%s",字元陣列名或指標);

2.gets()

所在標頭檔案:stdio.h

語法:gets(字元陣列名或指標);

兩者在接受字串時:

1.不同點:

scanf不能接受空格、製表符tab、回車等;

而gets能夠接受空格、製表符tab和回車等;

2.相同點:

字串接受結束後自動加'\0'。

C語言 gets()和scanf()函式的區別

scanf 函式和gets 函式都可用於輸入字串,但在功能上有區別。若想從鍵盤上輸入字串 hi hello 則應該使用 gets 函式。gets可以接收空格 而scanf遇到空格 回車和tab鍵都會認為輸入結束,所有它不能接收空格。char string 15 gets string 遇到回車認為輸...

C語言 gets()和scanf()函式的區別

scanf 函式和gets 函式都可用於輸入字串,但在功能上有區別。若想從鍵盤上輸入字串 hi hello 則應該使用 gets 函式。gets可以接收空格 而scanf遇到空格 回車和tab鍵都會認為輸入結束,所有它不能接收空格。char string 15 gets string 遇到回車認為輸...

C語言 gets()和scanf()函式的區別

scanf 函式和gets 函式都可用於輸入字串,但在功能上有區別。若想從鍵盤上輸入字串 hi hello 則應該使用 gets 函式。gets可以接收空格 而scanf遇到空格 回車和tab鍵都會認為輸入結束,所有它不能接收空格。char string 15 gets string 遇到回車認為輸...