计算机二级:scanf和gets获取字符串时的区别计算机二级考试
文章作者 100test 发表时间 2009:05:08 18:17:33
来源 100Test.Com百考试题网
2009年下半年全国计算机等级考试你准备好了没?考计算机等级考试的朋友,2009年下半年全国计算机等级考试时间是2009年9月19日至23日。更多优质资料尽在百考试题论坛 百考试题在线题库
在C语言中,能构获取字符串的函数至少有两个:
1.scanf()
所在头文件:stdio.h
语法:scanf("格式控制字符串",变量地址列表).
接受字符串时:scanf("%s",字符数组名或指针).
2.gets()
所在头文件:stdio.h
语法:gets(字符数组名或指针).
两者在接受字符串时:
1.不同点:
scanf不能接受空格、制表符Tab、回车等;
而gets能够接受空格、制表符Tab和回车等;
2.相同点:
字符串接受结束后自动加 \0 。
例1:
#include <.stdio.h>.
main()
{
char ch1[10],ch2[10].
scanf("%s",ch1).
gets(ch2).
}
依次键入asd空格fg回车,asd空格fg回车,则ch1="asd\0",ch2="asd fg\0"。
例2:
#include <.stdio.h>.
main()
{
char ch1[10],ch2[10],c1,c2.
scanf("%s",ch1).
c1=getchar().
gets(ch2).
c2=getchar().
}
依次键入asdfg回车,asdfg回车,则ch1="asdfg\0",c1= \n ,ch2="asdfg\0",c2需输入。
特别推荐:
2009年9月全国计算机等级考试时间及科目预告