满意答案

moruo5256

2013.12.25

采纳率:51%    等级:12

已帮助:19828人

(1) int getchar(void)

函数每次从stdin缓冲区读入一个字符遇到回车返回,并且回车也被存入缓冲区,所以getchar可以用来吃掉回车符。 函数返回读到的第一个字符的ASC码值,如果失败则返回-1 其定义为宏定义,即 #define getchar() getc(stdin) 因为是宏定义函数,所以getchar不支持指针的引用。 现在解释跳过第二个输入的原因,假如我们第一次输入a按回车,这时候我们getchar实际上将a字符和回车放入了缓冲区中,并返回第一个字符的值,然后第二个getchar函数直接从缓冲区继续去字符,拿到了回车,没有需要用户再输入 所以很多人把getchar用来吃掉回车符,起到类似清空缓冲区的原因。清空缓冲区还可以使用fflush函数,但是这个函数不是C标准库中的函数,有时候是无效的。

刚才说到了getchar的定义,其实就是getc函数的一种特殊的情况,下面介绍getc函数。

(2) int getc(FILE* stream) 也是采用的宏定义,所以不支持函数指针调用。 #define getc(_stream) (--(_stream)->_cnt >= 0 ? 0xff & *(_stream)->_ptr++ : _filbuf(_stream)) getc从指定的流中读取一个字符,刚才的getchar实际上就是getc(stdin) ,stdin是标准输入流,C在stdio.h中定义了三个流,也可以理解为是缓冲区。

#define stdin (&_iob[0])//标准输入,一般指向键盘#define stdout (&_iob[1])//标准输出#define stderr (&_iob[2])//错误流

基本实现过程

在这里再补充两个函数,简单带过,因为getch和getche不是C标准的库函数。

(3) int getch(void) 从命令行读取一个字符,不显示在命令行,很多人用来模拟“按任意键继续的效果”

(4) int getche(void) 从命令行中读取一个字符,显示在,命令行,与getch一样不是标准C函数库中的函数,在Windows平台下包含与conio.h中,在linux下与之相对的是curses.h库,但是在cygwin模拟的UNIX和ubuntu linux下gcc编译器均无法使用。

本文的最后介绍一下gets函数,他从流中读取字符串直到遇到换行符或者EOF或者遇到错误.

(5) char* gets(char* buffer)

从stdin流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为null值,并由此来结束字符串。

00分享举报

c语言 gets getc,6.16 C语言,getchar gets getc有什么区别 分别是表示什么的相关推荐

  1. 成绩统计实训报告C语言,C语言实训报告16.pdf

    C语言实训报告16.pdf 成都航空职业技术学院 < 语言课程设计>实训报告 C 姓 名: 余昊洲 学 号: 153895 班 级: 215361 专 业: 电子工艺与管理 系 别: 航空 ...

  2. C语言怎么判断字符YN,c语言中的宏_详解(转)

    1. 简单宏定义 简单的宏定义有如下格式: [#define指令(简单的宏)] #define 标识符替换列表 替换列表是一系列的C语言记号,包括标识符.关键字.数.字符常量.字符串字面量.运算符和标 ...

  3. c语言输入后没答案,C语言章节习题及答案(无指针)解读.doc

    C语言章节习题及答案(无指针)解读 <C程序设计>复习题集 第2章 基础概念 一.选择题(在下列各题的A).B).C).D)四个选项中,只有一个选项是正确的) 2.1以下叙述中正确的是 A ...

  4. c语言既适合于开发,C语言试题及答案 (1)

    C语言试题及答案 (1) 文章<C语言试题及答案 (1)>是由[作文仓库]的会员[我这么冷你怕不怕]为大家整理并分享的,仅供大家参考,欢迎阅读! 第1章 C语言概述习题 1. 单项选择题 ...

  5. 北京科技大学C语言程序设计,北京科技大学《C语言》第1章.ppt

    <北京科技大学<C语言>第1章.ppt>由会员分享,可在线阅读,更多相关<北京科技大学<C语言>第1章.ppt(36页珍藏版)>请在装配图网上搜索. 1 ...

  6. c语言程序设计教程ppt,《C语言程序设计教程》.ppt

    <<C语言程序设计教程>.ppt>由会员分享,可在线阅读,更多相关<<C语言程序设计教程>.ppt(30页珍藏版)>请在装配图网上搜索. 1.第1章 预 ...

  7. C语言13567星号如何输出,c语言程序编程心得

    c语言程序设计 本课介绍c语言程序设计的基本方法和基本的程序语句. 从程序流程的角度来看,程序可以分为三种基本结构,即顺序结构.分支结构.循环结构.这三种基本结构可以组成所有的各种复杂程序.c语言提供 ...

  8. c语言第1章ppt,c语言第1章课件.ppt

    <c语言第1章课件.ppt>由会员分享,可在线阅读,更多相关<c语言第1章课件.ppt(30页珍藏版)>请在人人文库网上搜索. 1.第1章 C语言概述,计算机中心,C 语言程序 ...

  9. 兰州大学C语言程序设计课程作业,兰州大学C语言程序设计课程作业1附答案.doc...

    兰州大学C语言程序设计课程作业1附答案.doc C 语言程序设计课程作业语言程序设计课程作业_A 历次成绩 完成时间 查看详情 1.0.0 2015-11-21 091531 2.0.0 2015-1 ...

  10. 2020年 HackerEarth 调查:Go 语言成为最受欢迎的语言 开发者最关心职业发展路径...

    近日 HackerEarth 发布了 2020 年开发者调查报告,有来自 76 个国家和地区的 16,000 多位开发者参与其中. HackerEarth 联合创始人兼首席执行官 Sachin Gup ...

最新文章

  1. seaJs api 帮助文档
  2. Hadoop HA+Federation 高可用联邦模式搭建指南
  3. 通过css将多个图标或图片用同一张图片通过定位背景位置调用到页面
  4. python的起源和发展_Python入门第一课——Python的起源、发展与前景!
  5. InfluxDB 简介、安装和简单使用
  6. 奔驰宝马路虎等齐降价 最高降幅达8.5万!
  7. 为了满足自己的好奇心,搞了一个业余项目耍,没想到还给我带来了$3000的收入......
  8. 核方法以及核函数讲解
  9. U盘安装CentOS 7解决方案 (fat系统文件4g限制)
  10. Activator 通过SSH解锁屏幕等手势操作
  11. 2013年微软校园招聘笔试题
  12. 《知识图谱》赵军 学习笔记
  13. 【BZOJ1014】【JSOI2008】火星人prefix Splay处理区间,hash+dichotomy(二分)check出解
  14. 第二章 第六课 Scratch作品:摇摇晃晃的虫子(随机数和碰到边缘就反弹)
  15. HEVC解码器的TDecCu部分
  16. 动手实现一个跑步小程序
  17. https证书风险修复
  18. pcb线路板制作过程分析
  19. jsp+ssm二手书图书回收捐赠管理系统springboot
  20. 如何在 VSCODE 中高效使用 R 语言 (图文详解)

热门文章

  1. 互联网最新创新创业项目
  2. SONY无线PS2遥控手柄与stm32单片机通信
  3. [c++]数组的逆输出
  4. 如何快速将小写字母转变为大写
  5. 电信猫大亚DB120-WG破解超级密码方法
  6. 广西壮族自治区公安厅信息中心异地容灾系统(三期)项目招标
  7. Runloop与UITableView简单结合
  8. 在加洲,我与我的加洲宝贝儿
  9. 机器人改变生活利弊英语作文_机器人的利弊作文
  10. 数据中心网络架构 — 网络带宽的收敛比