一、系统调用访问文件(unistd.h)
1. 文件操作系统调用
a. open
b. read
c. write
d. close
f. ioctl:把控制信息传递给设备驱动程序,提供与特殊硬件设备有关的控制,如磁带机
2. 系统调用:由于要在内核运行模式和用户运行模式中切换,所以比较低效,所以一次系统调用做尽量多的事情。
3. 全局命名空间:即不定义namespace的空间,目前已经不推荐。#include 和#include 是不一样的,前者是全局命名空间
4. unistd.h:是 C 和 C++ 程序设计语言中提供对 POSIX 操作系统 API 的访问功能的头文件的名称,定义的接口通常都是大量针对系统调用的封装,如 fork、pipe 以及各种 I/O 原语(read、write、close 等等)。
stdio.h:主要是C io方面的库函数,如标准输入输出,文件操作等
stdlib.h:主要是C 系统库方面的库函数,内存管理,系统调用,错误处理,随机数等方面的
string.h:就是C++ 主要针对字符串处理的库函数,strlen,strcmp,strcat等
5. lseek:偏移指针
6. fstat,stat, lstat:读取文件状态信息
7. dup,dup2:复制文件描述符
二、C标准库访问文件(stdio.h)
1. fopen, fread, fwrite, fflush, fseek, fclose:基本文件操作
2. fgetc, getc, getchar, fputc, putc, putchar:流文件中操作字符
3. fgets, gets:流文件中读取字符串
4. printf, sprintf, fprintf:格式化文件流输出
5. scanf, sscanf, fscanf:格式化字符串输出
三、其他系统调用的文件操作(unistd.h)
1. sys/stat.h, sys/types.h, dirent.h ——一些辅助文件,主要是定义结构
2. chmod, chown, unlink, link, symlink, mkdir, rmdir, chdir, getcwd:和shell中的命令差不多,是shell的源头
3. opendir, readdir telldir, seekdir, closedir: 同上
四、fcntl和mmap
1. fcntl.h, fcntl():对文件描述符的底层操作
2. sys/mman.h, mmap():创建共享内存映射
阅读(617) | 评论(0) | 转发(0) |