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 读取文件字符串的输入字符流. * --------- ...
随机推荐
- Flutter实战视频-移动电商-47.详细页_Flutter_html插件的使用
47.详细页_Flutter_html插件的使用 详情里面是hemlt和图片组成的,但是flutter是不支持html的所以需要其他插件 flutter webview plugin:这个不太好用 f ...
- Identity Server 4 原理和实战(完结)_Hybrid Flow 实例, Claims, 角色授权和策略授权
4分50 建立客户端 不需要身份认证 客户端叫做HybirdClient 配置IdentityServer服务端,先把客户端添加上 把userClaims添加到token里面 然后运行服务端就可以了 ...
- 【WIP】LaTex入门
创建: 2018/06/15 说明: 这鸟东西实在没什么用的感觉,无奈学校报告要用这个写.无奈抽点时间学一下.
- spring基于注解的IOC
曾经的XML配置: <bean id="accountService" class="com.itheima.service.impl.AccountService ...
- HDU5880【AC自动机】
题意: 给出n个字符串,再给出一个字符串,把之前出现过的字符串全部变成* 思路: AC自动机,Trie树上存的值是一个字符串的长度,也就是往前的长度,然后倒着处理一遍. 感想: 第三题AC自动机,本来 ...
- Lightoj 1067【逆元模板(求C(N,M))】
#include <bits/stdc++.h> using namespace std; typedef long long LL; typedef unsigned long long ...
- Unity UGUI鼠标穿透UI问题(Unity官方的解决方法)
简述 最近在用UGUI的时候遇到了鼠标穿透的问题,就是说在UGUI和3D场景混合的情况下,点击UI区域同时也会 触发3D中物体的鼠标事件.比如下图中 这里给Cube加了一个鼠标点击改变颜色的代码,如下 ...
- C 语言实例 - 从文件中读取一行
C 语言实例 - 从文件中读取一行 从文件中读取一行. 文件 runoob.txt 内容: $ cat runoob.txt runoob.com google.com 实例 #include < ...
- PostgreSQL-7-数据连接
1.通过WHERE进行简单连接 SELECT * FROM company3,department 不添加WHERE将会显示所有数据 SELECT * FROM company3,departmen ...
- NOI2012 D2T1扩展欧几里得
#include <bits/stdc++.h> using namespace std; #define ll long long ll extgcd(ll a,ll b,ll & ...