Linux 标准输入输出_11
2013-03-21 11:51
176 查看
标准输入输出是基于标准输入输出库实现的。
知识点大纲 『
*1 标准输入输出的基本操作,包括文件的打开与关闭,缓冲区的操作等。
*2 非格式化输入输出, 包括单个字节,字符串(行)以及数据块的输入输出。
*3 格式化输入输出。
』
-11.1 标准输入输出的基本操作
标准输入输出操作是通过控制结构 FILE 进行。
文件控制结构中包含处理文件所需的全部信息,例如文件名,文件当前的读写位置,用于该文件读写的内存缓冲区位置等。打开文件时,系统会在内存中自动建立该文件的控制结构。关闭文件时,文件控制结构被释放。在对文件进行操作之前,要首先获取文件的指针,即指向文件控制结构的指针,后续操作都通过该指针进行。
标准输入输出时,有 3 个比较特殊的文件,如下 :
*1 标准输入文件(stdin) : 一般为键盘
*2 标准输出文件(stdout): 一般为显示器
*3 标准错误输出文件(stderr) : 一般为显示器
-11.1.1 文件的打开
#include <stdio.h>
FILE *fopen(const char *filename, const char *modes);
例如 : FILE *fp; fp = fopen("./hello.c", "r");
-11.1.2 文件的关闭
对文件操作完成后,应该关闭文件,进而释放文件所占用的系统资源。关闭后,文件指针将不再有效。
#include <stdio.h>
int fclose(FILE *fp);
-11.1.3 缓冲区的刷新
#include <stdio.h>
int fflush(FILE *fp); 写入到磁盘文件或者输出到用户终端。
int fpurge(FILE *fp); 清空缓冲区。
-11.1.4 缓冲区属性的设置 (缓冲区的大小和类型都可以通过函数来设置)
*1 全缓冲 *2 行缓冲 *3 无缓冲
#include <stdio.h>
int setvbuf(FILE *fp, char *buf, int mode, size_t size);
-11.2 非格式化输入输出
-11.2.1 单个字节输入输出
int fgetc(FILE *fp);
-11.2.2 字符串输入输出
char *fgets(char *s, int n, FILE *fp);
-11.2.3 数据块的输入输出
size_t fread (void *ptr, size_t size, size_t n, FILE *fp);
size_t fwrite(void *ptr, size_t size, size_t n, FILE *fp);
-11.3 格式化的输入输出
int fprintf(FILE *fp, const char *format, ...);
知识点大纲 『
*1 标准输入输出的基本操作,包括文件的打开与关闭,缓冲区的操作等。
*2 非格式化输入输出, 包括单个字节,字符串(行)以及数据块的输入输出。
*3 格式化输入输出。
』
-11.1 标准输入输出的基本操作
标准输入输出操作是通过控制结构 FILE 进行。
文件控制结构中包含处理文件所需的全部信息,例如文件名,文件当前的读写位置,用于该文件读写的内存缓冲区位置等。打开文件时,系统会在内存中自动建立该文件的控制结构。关闭文件时,文件控制结构被释放。在对文件进行操作之前,要首先获取文件的指针,即指向文件控制结构的指针,后续操作都通过该指针进行。
标准输入输出时,有 3 个比较特殊的文件,如下 :
*1 标准输入文件(stdin) : 一般为键盘
*2 标准输出文件(stdout): 一般为显示器
*3 标准错误输出文件(stderr) : 一般为显示器
-11.1.1 文件的打开
#include <stdio.h>
FILE *fopen(const char *filename, const char *modes);
例如 : FILE *fp; fp = fopen("./hello.c", "r");
-11.1.2 文件的关闭
对文件操作完成后,应该关闭文件,进而释放文件所占用的系统资源。关闭后,文件指针将不再有效。
#include <stdio.h>
int fclose(FILE *fp);
-11.1.3 缓冲区的刷新
#include <stdio.h>
int fflush(FILE *fp); 写入到磁盘文件或者输出到用户终端。
int fpurge(FILE *fp); 清空缓冲区。
-11.1.4 缓冲区属性的设置 (缓冲区的大小和类型都可以通过函数来设置)
*1 全缓冲 *2 行缓冲 *3 无缓冲
#include <stdio.h>
int setvbuf(FILE *fp, char *buf, int mode, size_t size);
-11.2 非格式化输入输出
-11.2.1 单个字节输入输出
int fgetc(FILE *fp);
-11.2.2 字符串输入输出
char *fgets(char *s, int n, FILE *fp);
-11.2.3 数据块的输入输出
size_t fread (void *ptr, size_t size, size_t n, FILE *fp);
size_t fwrite(void *ptr, size_t size, size_t n, FILE *fp);
-11.3 格式化的输入输出
int fprintf(FILE *fp, const char *format, ...);
相关文章推荐
- Linux 标准输入输出_11
- Linux下修改Matlab配置文件支持C++ 11标准以生成mex
- Linux中标准输入输出解释2>&1
- Linux 标准输入输出详解
- linux标准输入输出
- linux 标准输入输出 重定向
- Linux学习--第十天--bash脚本、用户自定义变量、环境变量、位置参数变量、预定义变量、标准输入输出、wc、history、dd、PS1
- linux下的基本操作11(输入输出重定向及管道)
- 24 Linux C下Open函数打开文件描述符用于标准输入输出
- 第九节 linux标准输入输出操作
- shell: Linux中标准输入输出解释2>&1 crontab
- 嵌入式成长轨迹18 【Linux应用编程强化】【Linux下的C编程 下】【标准输入输出】
- Linux下如何重新打开标准输入输出(stdin,stdout,stderr)
- Linux下改动Matlab配置文件支持C++ 11标准以生成mex
- linux 标准输入输出的详解
- Linux学习笔记_系统输入输出标准(重定向,>,>>,<,2>&1,xargs)
- linux 标准输入输出重定向
- Linux-C标准输入输出
- linux 标准输入输出
- [Linux]Shell中标准输入输出简称