fgetc, fgets, getc, getchar, gets, ungetc - 输入字符和字符串
总览 (SYNOPSIS)
#include <stdio.h> int fgetc(FILE *stream);
char *fgets(char *s, int size, FILE *stream);
int getc(FILE *stream);
int getchar(void);
char *gets(char *s);
int ungetc(int c, FILE *stream);
描述 (DESCRIPTION)
fgetc() 从 stream 流 中 读取 下一个 字符, 然后 从 unsigned char 类型转换 到 int 型 返回, 如果 到达 文件末尾 或 出现 错误 则 返回 EOF .
getc() 等于 fgetc() , 只是 它 可能 以 宏 的 形式 实现, 并 多次 访问 stream 流.
getchar() 等于 getc(stdin).
gets() 从 stdin 读取 一行 字符串, 保存在 s 指向的 缓冲区 中, 读到 换行符(newline) 或 EOF 时 操作 结束, 同时 把 它们 替换为 '\0'. 该函数 不检查 缓冲区溢出 (参见 后面的 BUGS 节).
fgets() 从 stream 流 中 读取 多至 size - 1 个 字符, 保存在 s 指向的 缓冲区 中, 读到 换行符(newline) 或 EOF 时 操作 结束, 如果 读到的 是 换行符, 把 换行符 也保存在 缓冲区 中. 函数 将在 最后一个 字符 后面 添加 一个 '\0' 字符.
ungetc() 把 c 转换为 unsigned char 类型 并 回送到 stream 中 供 后续的 读操作 读取. 回送的 所有 字符 将按 相反的 顺序 返回; 只保证 一个 回送 操作 的 可靠.
这里 描述的 函数 可以 混合 使用, 也可以 结合 stdio 库中 其他的 输入函数 处理 同一个 输入流.
相应的 无锁函数(non-locking) 参见 unlocked_stdio(3).
返回值 (RETURN VALUE)
fgetc(), getc() 和 getchar() 返回 从 unsigned char 类型转换 到 int 型 的 字符, 如果 操作 失败 或 到达 文件末尾 则 返回 EOF .
如果 操作 成功, gets() 和 fgets() 返回 s 指针, 否则 返回 NULL 指针, 如果 到达 文件末尾 时 还没有 读到 字符 也返回 NULL .
操作 成功 时 ungetc() 返回 c , 否则 返回 EOF .
fgetc, fgets, getc, getchar, gets, ungetc - 输入字符和字符串的更多相关文章
- fgetc,getc,fputc,putc,putchar,getchar
转自 http://blog.csdn.net/todd911/article/details/8952565 输入输出函数家族 家族名 目的 ...
- 文件内容操作篇clearerr fclose fdopen feof fflush fgetc fgets fileno fopen fputc fputs fread freopen fseek ftell fwrite getc getchar gets
clearerr(清除文件流的错误旗标) 相关函数 feof 表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * stream); 函数说明 ...
- C语言输入多组问题~ungetc回退字符到stdin
题目描述 输入数组长度 n 输入数组 a[1...n] 输入查找个数m 输入查找数字b[1...m] 输出 YES or NO 查找有则YES 否则NO . 输入描述: 输入有多组数据 ...
- 009PHP文件处理——文件处理 file_get_contents file_put_contents fgetc fgets fgetss
<?php /** * 文件处理 file_get_contents file_put_contents fgetc fgets fgetss */ //fgetc() 传入文件操作句柄.每次获 ...
- 利用C语言识别用户输入字符并且输出该字符ASCII码值(大小写字母篇)(含思路)
要求:从键盘输入一个字符,如果输入字符的是小写英文字母,则将其转换为大写英文字母,然后将转换后的英文字母及其ASCII码值输出到屏幕上,如果输入的是其他字符,则不转换并且直接将它及其ASCII码值输出 ...
- 用 getchar putchar 来输入和接收 但是要清空缓冲区
1 //用 getchar putchar 来输入和接收 但是要清空缓冲区 2 3 #include <stdio.h> 4 int main() 5 { 6 char ch1,ch2; ...
- 在java中如何用键盘输入一个数,字符,字符串
一,利用 Scanner 实现从键盘读入integer或float 型数据 import java.util.*; public class test { public static void mai ...
- EditText限制输入字符类型的几种方式
最近的项目上需要限制EditText输入字符的类型,就把可以实现这个功能的方法整理了一下: 1.第一种方式是通过EditText的inputType来实现,可以通过xml或者Java文件来设置.假如我 ...
- BufferedReader,缓冲输入字符流
1. /** * 输入字符流: * --------|Reader 所有输入字符流的基类.抽象类 * -----------|FileReader 读取文件字符串的输入字符流. * --------- ...
随机推荐
- 优化jQuery选择器
优化jQuery选择器 选择优化比以前更加重要,因为越来越多的浏览器实现了queryselectorall()并承担了将jQuery选择器转移到浏览器的责任.记住这些小技巧可以让你轻松突破学习选择器时 ...
- 模型验证 IValidatableObject 无法进入 Validate 方法的原因
模型的属性的类型为 decimal 时无法进入 Validate 方法 public decimal Age { get; set; } 当把属性的类型改为可空类型时 则可以进入 Validate 方 ...
- Unity(1) 编辑器结构
5个主要视图视图,未完,持续补充... 1 Project(项目) 用于显示资源 Favorites:按资源分类显示 Assets:按目录结构显示 特殊说明 Prefabs(预设),用于场景中游戏对象 ...
- DMOJ IOI '17 P3 - Toy Train【拓扑排序】
传送:https://dmoj.ca/problem/ioi17p3 参考:https://blog.csdn.net/qq_27327327/article/details/80711824 妙啊- ...
- 3.Python自我修炼(升仙中....整数,布尔值,字符串,for循环)
python学习(整数,布尔值,字符串,for循环) 1.整数 在python3中所有的整数都是int类型. 但在python2中如果数据量比较大. 会使用long类型.但是在python3中不存 ...
- 区间质数查询 luoguP1865
原题 https://www.luogu.org/problemnew/show/P1865 本来get到了一个很好的判断素数的方法 O(玄学常数)https://www.luogu.org/blog ...
- jq解析json文件
$.ajaxSettings.async = false;//同步还是异步 $.getJSON(URL,function(data){ //成功后执行 })
- tensorflow:实战Google深度学习框架第四章01损失函数
深度学习:两个重要特性:多层和非线性 线性模型:任意线性模型的组合都是线性模型,只通过线性变换任意层的全连接神经网络与单层神经网络没有区别. 激活函数:能够实现去线性化(神经元的输出通过一个非线性函数 ...
- HDU-1556:Color the ball(前缀和)
Color the ball Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...
- java如果去除中间空格,就不能用trim()这个方法了
public class Hello { public static void main(String[] args){ String text = "12v 4 6 5 55"; ...