scanf,EOF,getchar,gets,puts

本文介绍了C语言中的几个关键输入输出函数:getchar用于读取单个字符,scanf用于格式化输入,puts用于输出字符串并自动换行,而EOF是文件结束标志。这些函数都涉及到输入缓冲区的概念,getchar能读取包括空格在内的所有字符,而scanf在遇到空格时停止读取。gets读取直到回车结束的字符串,puts则输出字符串并添加换行。
scanf,EOF,getchar,gets,puts
#include <stdio.h>
  int main()
  {
  int c;
  while ((c = getchar()) != EOF)
  putchar(c);
  return 0;
  }
运行程序另起一行,按CTRL+Z键,即会显示“^Z",再次按回车键即可退出程序。
EOF是指文件的结束符,是一个 宏定义EOF为End Of File的缩写,在操作系统中表示资料源无更多的资料可读取。
使用EOF是为了避免因试图在文件结尾处进行输入而产生的错误。
putchar--stdio.h
int putchar ( int character );
1.Write character to stdout,Writes a character to the standard output (stdout).
2.格式putchar(c)--c可以是ASCII值/char型变量/'a'
getchar与scanf--stdio.h
int getchar ( void );
格式int a=getchar();
1、getchar其实返回的是字符的ASCII码值(整数)。
2、getchar在读取结束或者失败的时候,会返回EOF。
scanf和getchar都是输入函数,它们都是从键盘上来读取我们的数据,但它们 不是直接从键盘上来读取我们的数据 。它们和键盘之间有一个区域叫 缓冲区
输入函数先来看缓冲区中是否有数据,如果有,它直接就拿走了,不需要从键盘输入,如果缓冲区什么都没有,则需要从键盘输入,再拿走。
scanf读取的方式是读取 \n之前的内容
scanf 取缓冲区中的数据,当它 读到空格的时候,它就不再读了 (这是scanf的一个作用性质)。
getchar读取字符(包括空格和换行)
gets与puts--stdio.h
char * gets ( char * str );
1. gets()函数用来从标准输入设备(键盘)读取字符串直到 回车结束 , 但回车符 不属于 这个字符串。
2.其调用格式为:gets(str);  其中str为字符串变量(字符串数组名或字符串指针 )
3.gets会将标准输入流(stdin)中的字符串存入str中,并自动加入'\0'
int puts ( const char * str );
1. puts()函数用来向标准输出(stdout)设备(屏幕)写字符串并换行,
2. 其调用格式为 puts(s); 其中s为 字符串 变量(字符串数组名或字符串指针)。
    puts()函数的作用与语printf("%s\n", s)相同。
3. 成功时,将返回非负值。出错时,该函数返回 EOF 并设置 错误指示器ferror)。
注意: (1). puts()函数只能输出字符串, 不能输出数值或进行格式变换。
    (2). 可以将字符串直接写入puts()函数中。如:  puts("Hello, Turbo C2.0");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值