91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c語言scanf和gets有什么不同

發布時間:2021-01-30 16:07:34 來源:億速云 閱讀:163 作者:Leah 欄目:編程語言

這篇文章給大家介紹c語言scanf和gets有什么不同,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

解釋

gets(s)函數與 scanf("%s",&s) 相似,但不完全相同,使用scanf("%s",&s) 函數輸入字符串時存在一個問題,就是如果輸入了空格會認為字符串結束,空格后的字符將作為下一個輸入項處理,但gets()函數將接收輸入的整個字符串直到遇到換行為止。

1.scanf()

所在頭文件:stdio.h

語法:scanf("格式控制字符串",變量地址列表);

接受字符串時:scanf("%s",字符數組名或指針);

2.gets()

所在頭文件:stdio.h

語法:gets(字符數組名或指針);

兩者在接受字符串時:

1.不同點:

scanf不能接受空格、制表符Tab、回車等;

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

2.相同點:

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

例1:

#include <stdio.h>
int main()
{
  char ch2[10],ch3[10];

  scanf("%s",ch2);
  gets(ch3);

return 0;
}

依次鍵入asd空格fg回車,asd空格fg回車,則ch2="asd\0",ch3="asd fg\0"。

程序2:

#include <stdio.h>
int main()
{
char str1[20], str2[20];
scanf("%s",str1);
printf("%s\n",str1); 
scanf("%s",str2);
printf("%s\n",str2);
return 0;
}

程序的功能是讀入一個字符串輸出,再讀入一個字符串輸出。可我們會發現輸入的字符串中不能出現空格,例如:

測試一輸入:

Hello word(enter)

輸出:

Hello
world!

程序3:

#include <stdio.h>
int main()
{
char str1[20], str2[20];
gets(str1);
printf("%s\n",str1); 
gets(str2);
printf("%s\n",str2);
return 0;
}

測試:

Helloworld! [輸入]
Helloworld! [輸出]
12345 [輸入]
12345 [輸出]

關于c語言scanf和gets有什么不同就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

怀仁县| 于田县| 聂荣县| 桑植县| 永顺县| 义马市| 盖州市| 皋兰县| 平罗县| 濮阳县| 昔阳县| 凤凰县| 固镇县| 武定县| 鄂托克旗| 井研县| 尚义县| 邓州市| 吉隆县| 阳高县| 嵊泗县| 来凤县| 江安县| 巫山县| 清水县| 垫江县| 广南县| 徐闻县| 余姚市| 乌拉特中旗| 乌鲁木齐县| 阿拉善右旗| 临颍县| 泊头市| 綦江县| 漳浦县| 佛教| 新田县| 兴安盟| 西畴县| 苏尼特左旗|