gets和scanf都是可以在C语言中用于读取字符串的,但是它们实际上也有很大的不同,本篇文章我们就来看一下gets和scanf之间有什么区别。

gets和scanf的区别

1、 gets可以接收空格;而scanf遇到空格、回车和Tab键都会认为输入结束,所有它不能接收空格。

例如:如果输入为"hello world"时,上面程序的运行结果是"hello world"。而如果用scanf则只能输出hello

2、scanf对末尾回车符的处理:把回车符保留在缓存中。gets对末尾回车符的处理:接收回车,但把回车替换为\0.

3、gets的返回值为char*型,当读入成功时会返回输入的字符串指针地址,出错时返回NULL;scanf返回值为int型,返回实际成功赋值的变量个数,当遇到文件结尾标识时返回EOF。

4、gets函数仅用于读入字符串;scanf为格式化输出函数,可以读入任意C语言基础类型的变量值,而不是仅限于字符串(char*)类型。

c语言scanf和gets,gets和scanf有什么区别相关推荐

  1. c语言switch scanf语句,C语言中scanf函数与switch语句

    ----------------switch---------------- 1)使用格式 switch(表达式){ case 常量表达式1: 语句1; case 常量表达式2: 语句2; ... c ...

  2. c语言scanf返回值被忽略,scanf返回值问题

    在家养病,闲着没事看C primer plus,看到书中对于scanf输入的判断,常用如下方法: 此时它将返回1视为我输入成功,如果不为1则视为输入失败.那到底scanf的返回值具体指的是什么呢? 例 ...

  3. c语言scanf运行出现吃回车,scanf读取回车

    c语言 scanf 和 读取回车 我想用scanf读文件( program scanf()能把回车键读进去吗?数组能赋予回车值吗? //可以读入回车符,也可以给数组赋值 //具体看下例 #includ ...

  4. 若x,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是: A)scanf(“ %d%lx,%le“,x,y,z); B)scanf(“%2d * %d%lf“,

    若x,y均定义为int型,z定义为double型,以下不合法的scanf函数调用语句是: A)scanf(" %d%lx,%le",&x,&y,&z); B ...

  5. c语言深入浅出(一)strcpy和memcpy的区别

    c语言深入浅出(一)strcpy和memcpy的区别 strcpy和memcpy都是c语言的库函数 strcpy:只用于字符串的复制,当碰到'\0'就停止了 memcpy:用于这个内存的拷贝,适用于结 ...

  6. c语言 python java_C语言、C++、Java,Python之间的区别,哪个更有前景,哪个更难 ?...

    从这四种语言的难度.受欢迎度还有作用以及优点缺点给楼主做一个全面的分析,我们可以从中了解其区别,以及难易程度.至于今后可以用到的或者是前景问题,根据自己的职业发展大家可以自己做个分析.最后会总结一下他 ...

  7. 大根堆与小根堆的理解,如何手写一个堆,以及什么时候用自己手写的堆,什么时候用语言提供堆的api,(二者的区别)

    大根堆与小根堆的理解,如何手写一个堆,以及什么时候用自己手写的堆,什么时候用语言提供堆的api,(二者的区别) 定义 Heap是一种数据结构具有以下的特点: 1)完全二叉树: 2)heap中存储的值是 ...

  8. java构造方法特点_java语言构造方法的特点是什么?和成员方法区别在哪?

    在科学技术水平发展日新月异的今时今日,大家对于新技术的渴求越来越强烈,也开始主动的学习更多的新知识以更好的适应时代的发展.今天就来为大家介绍一下java语言构造方法的特点是什么以及和成员方法区别在哪? ...

  9. java中怎么输入长整型_c语言如何输入长整型 scanf输入长整型

    C语言中无符号长整型数的输入输出格式是什么? 整数变量的分类:basic integer:int short integer:short int long int将修饰符unsigned添加到上述三个 ...

最新文章

  1. 微软“叛变”谷歌 Chromium!
  2. 10篇一作SCI博士的走心分享--宏组学研究之“道”
  3. 下载 | 新版Java开发手册有哪些亮点?
  4. 【MongoDB学习笔记21】MongoDB的复合索引
  5. 修改linux开机画面
  6. 教学5层网络体系结构——分层之后数据的发送和接收
  7. Android无法优化应用,Android应用优化总结
  8. 【OpenCV 例程200篇】74. 图像的抗混叠
  9. struct数组初始化
  10. Kerberos认证过程学习理解
  11. IDEA 导入Weka的Maven依赖jar包
  12. [2018.10.31 T3] 玩
  13. 哈工大《同义词词林》共享版的若干改进
  14. 新乡医学院三全学院计算机课程,十二月份通识课程选课
  15. Office Execl常用函数使用方法
  16. 单机塔防游戏推荐_给大家推荐六款爆好玩的塔防游戏
  17. 我的团长我的团分集剧情介绍
  18. 江苏省2017年高等数学竞赛本二试题(含解答)
  19. DDR3 CONTROLLER-PHY物理层
  20. 【20200401程序设计思维与实践 Week7作业】

热门文章

  1. [转]论青楼女子与游戏策划的异同
  2. 电脑计算机管理点不出来,控制面板在哪? 如何解决控制面板打不开?
  3. 记录解决点击事件触发两次情况
  4. java窗口排列_以下不是Windows7窗口排列方式的是
  5. 抖音html 3d旋转扩大图片数量,抖音短视频,超详细的三合一封面图制作实操方法...
  6. 数据中心运维节能工作的基本原则
  7. DotA新手入门系列 新手生存篇
  8. 协同过滤算法智能推荐原理与实践
  9. python基础训练 day1
  10. 我的第一篇随笔-英语(给他人的祝福)