C语言输入函数区别
2016-06-14 22:37
344 查看
C语言 gets()和scanf()函数的区别
scanf( )函数和gets( )函数都可用于输入字符串,但在功能上有区别。若想从键盘上输入字符串"hi hello",则应该使用__gets__函数。
gets可以接收空格;而scanf遇到空格、回车和Tab键都会认为输入结束,所有它不能接收空格。
char string[15]; gets(string); /*遇到回车认为输入结束*/
scanf("%s",string); /*遇到空格认为输入结束*/
所以在输入的字符串中包含空格时,应该使用gets输入。
scanf和gets获取字符串时的区别
在C语言中,能构获取字符串的函数至少有两个:
1.scanf()
所在头文件:stdio.h
语法:scanf("格式控制字符串",变量地址列表);
接受字符串时:scanf("%s",字符数组名或指针);
2.gets()
所在头文件:stdio.h
语法:gets(字符数组名或指针);
两者在接受字符串时:
1.不同点:
scanf不能接受空格、制表符Tab、回车等;
而gets能够接受空格、制表符Tab和回车等;
2.相同点:
字符串接受结束后自动加'\0'。
scanf( )函数和gets( )函数都可用于输入字符串,但在功能上有区别。若想从键盘上输入字符串"hi hello",则应该使用__gets__函数。
gets可以接收空格;而scanf遇到空格、回车和Tab键都会认为输入结束,所有它不能接收空格。
char string[15]; gets(string); /*遇到回车认为输入结束*/
scanf("%s",string); /*遇到空格认为输入结束*/
所以在输入的字符串中包含空格时,应该使用gets输入。
scanf和gets获取字符串时的区别
在C语言中,能构获取字符串的函数至少有两个:
1.scanf()
所在头文件:stdio.h
语法:scanf("格式控制字符串",变量地址列表);
接受字符串时:scanf("%s",字符数组名或指针);
2.gets()
所在头文件:stdio.h
语法:gets(字符数组名或指针);
两者在接受字符串时:
1.不同点:
scanf不能接受空格、制表符Tab、回车等;
而gets能够接受空格、制表符Tab和回车等;
2.相同点:
字符串接受结束后自动加'\0'。
相关文章推荐
- [leetcode] 【字符串】 10. Regular Expression Matching
- C++继承二
- C语言学习笔记 链表基础
- 范型程序设计——洗牌
- 基本数据类型
- 【c++程序】计算字符个数
- 8大常用通讯中间件/MQ使用总结
- C++ 智能指针详解
- c++ 需要用拷贝构造函数的情况
- Effective C++--条款20:适当地用pass-by-reference-to-const代替pass-by-value
- 大牛C++编程开发学习建议50条
- C++中的Sleep() 函数
- C语言学习总结
- C++之多线程(C++11 thread.h文件实现多线程)
- 动态存储分配及深复制——人数不定的工资类
- [C++ 面试基础知识总结] 泛型算法
- HDOJ 2007 平方和与立方和
- C++中继承的注意事项
- C语言学习总结
- C语言学习总结