摘要: C 库函数 - fread() 描述 C 库函数 size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream) 从给定流 stream 读取数据到 ptr 所指向的数组中。 声明 下面是 fread() 函数的声明。 参数 ptr 阅读全文
posted @ 2016-11-02 22:00 GreenHand# 阅读(1705) 评论(0) 推荐(0) 编辑
摘要: 打开/关闭/刷新流 1. fopen() 打开流 功能: 1)fopen()打开由 path指定的一个文件。 2)fdopen()获取一个先有的文件描述符,并使一个标准的I/O流与该描述相结合。此函数常用于由创建管道和网络通信函数小所返回的描述符。因为这些特殊类型的文件不能用标准I/O fopen函 阅读全文
posted @ 2016-11-02 21:13 GreenHand# 阅读(7241) 评论(0) 推荐(0) 编辑
摘要: 标准I/O库 1. 标准I/O介绍 不仅是在UNIX系统中,很多操作系统上都实现了标准I/O库。 标准I/O库由ANSI C 标准说明 标准 I/O 库处理很多细节,例如带有缓冲分配、以优化长度执行的I/O等,这样使用户不用关心如何选择合适的块长度。 标准I/O在系统调用(文件I/O)的基础上构造, 阅读全文
posted @ 2016-11-02 20:12 GreenHand# 阅读(1488) 评论(0) 推荐(0) 编辑
摘要: 目录操作 当目标是目录而不是文件的时候,ls -l的结果会显示目录下所有子条目的信息,怎么去遍历整个目录呢?答案马上揭晓! 1. 打开目录 功能:opendir()用来打开参数name指定的目录,并返回DIR *形态的目录流 需要包含的头文件:<sys/types.h>,<dirent.h> 函数原 阅读全文
posted @ 2016-11-02 19:23 GreenHand# 阅读(1480) 评论(0) 推荐(0) 编辑
摘要: stat 的使用 Linux有个命令,ls -l,效果如下: 这个命令能显示文件的类型、操作权限、硬链接数量、属主、所属组、大小、修改时间、文件名。它是怎么获得这些信息的呢,请看下面的讲解。 stat 的基本使用 stat:返回一个与此命 需要包含的头文件: <sys/types.h>,<sys/s 阅读全文
posted @ 2016-11-02 18:57 GreenHand# 阅读(11724) 评论(0) 推荐(0) 编辑
摘要: Lseek lseek()的作用是,设置文件内容的读写位置。 每个打开的文件都有一个“当前文件偏移量”,是一个非负整数,用以度量从文件开始处计算的字节数。通常,读写操作都是从当前文件偏移量处开始,并使偏移量增加所读或写的字节数。默认情况下,你打开一个文件(open),除非指定O_APPEND参数,不 阅读全文
posted @ 2016-11-02 17:17 GreenHand# 阅读(2433) 评论(0) 推荐(0) 编辑
摘要: read read()是一个系统调用函数。用来从一个文件中,读取指定长度的数据到 buf 中。 使用read()时需要包含的头文件: <unistd.h> 函数原型: ssize_t read(int fd, void *buf, size_t count); ssize_t是系统头文件中 type 阅读全文
posted @ 2016-11-02 16:35 GreenHand# 阅读(1960) 评论(0) 推荐(1) 编辑
摘要: Open open()是一个系统调用函数,用来打开或创建一个文件,通过不同的oflag选项实现不同功能。 使用时open()函数需要包含的头文件:<sys/types.h>,<sys/stat.h>,<fcntl.h> 函数原型: int open(const char *pathname, int 阅读全文
posted @ 2016-11-02 15:43 GreenHand# 阅读(15630) 评论(1) 推荐(1) 编辑
摘要: Linux文件 I/O 介绍 1. Linux系统调用 Linux系统调用(system call)是指操作系统提供给用户程序的一组“特殊接口”,用户程序可以通过这组“特殊”接口来获得操作系统提供的特殊服务。 为了更好的保护内核空间,将程序的运行空间分为内核空间和用户空间,他们运行在不同的级别上,在 阅读全文
posted @ 2016-11-02 15:32 GreenHand# 阅读(1335) 评论(0) 推荐(0) 编辑