900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > C语言gets函数详解 字符/字符串的输入

C语言gets函数详解 字符/字符串的输入

时间:2021-05-17 11:04:06

相关推荐

C语言gets函数详解 字符/字符串的输入

下面我们从字符。字符串的输入讲起,为大家理清楚gets函数scanf函数即getchar函数的区别等

单个字符的输入

1)getchar

基本用法:

1,读取一个字符

2,用于清空缓冲区

下面解释什么是清空缓冲区:如下:

#include<stdio.h>int main(){//我们输入一个数和一个字符int height;char id;scanf("%d", &height);scanf("%c", &id);printf("%d %c", height, id);return 0;}

上述代码的输出为:

当我们输入数字1111并按下回车之后,系统会自动的吧我们所按的回车当作字符存在id中,导致了运行错误!!(这是最简单的理解吧)

改进为:

#include<stdio.h>int main(){//我们输入一个数和一个字符int height;char id;scanf("%d", &height);getchar();//读入回车,清空缓冲区scanf("%c", &id);printf("%d %c", height, id);return 0;}

正确的运行结果为:

2)scanf函数

scanf函数大家应该很熟悉了

scanf函数输入字符即scanf("%c"&zifu);

scanf函数处理单个字符时与getcahr函数相同

字符串的输入

1)gets函数

#include<stdio.h>int main(){char arr[100] = { 0 };gets(arr);printf("%s", arr);return 0;}

看样例:

这里它读入了空格并且打印

总结:

从标准输入设备(如键盘)读取字符到s所指向的数组中,直到读到文件末尾或者换行符‘\n’。换行符被丢弃,最后一个字符读入后写入一个 ‘\0’。若成功则返回s,若无字符读入数组或者读取失败返回空指针NULL。

2)scanf函数

#include<stdio.h>int main(){char arr[100] = { 0 };scanf("%s", arr);//注意字符数组的数组名即地址,不用取址符&printf("%s", arr);return 0;}

看输出样例:

这里我输入了:i love you 但是它只打印了 i

我输入了: hello(前面有三个空格)但是空格也没有打印

总结: scanf函数读取用户键入的字符到字符数组,直到遇到空格,回车,或者文件结束符(EOF)为止,空格,回车,或者文件结束符被丢弃,最后一个字符读入后往字符数组中写入结束符'\0'。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。