首页 > 代码库 > scanf、gets、getchar
scanf、gets、getchar
scanf:
scanf("%c",..):可以读取空格、换行符、制表符等
scanf("%d",...):开始忽略空格、换行符、制表符,直到读取到一个字符
scanf("%s",...):开始读取时忽略空格、换行符、制表符,直到开始读取字符串,最后以空格、换行符、制表符结束,不丢弃任何字符
gets:直接读取字符串,最后以换行符结束,并且丢掉缓存中的换行符。
getchar:读取一个字符。
scanf("%d", &a);
scanf("%d", &b);
输入: 空格空格6换行符8
结果a = 6,b=8,说明开始忽略了开始忽略空格、换行符、制表符,直到读取到一个字符
gets(str1);
c= getchar()
gets(str2);
输入:
abcderg
fgtht
结果:
str1 :abcd erg
c: f
str2:gtht
说明:直接读取字符串,最后以换行符结束,并且丢掉缓存中的换行符
scanf("%s", str1);
c= getchar()
scanf("%s", str1);
同样输入
结果:
str1 :abcderg
c: 换行符
str2:fgtht
说明scanf("%s")没有丢弃换行符,换行符还在缓存中
gets可以读取空格,测试略
输入:空格空格换行符abcd
scanf("%s", str);
结果:str:abcd
gets(str);
结果str:空格空格
scanf(“%c”)和getchar()同
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。