系统编程,系统调用函数,read write close lseek举例

int main(int argc,char * argv[],char* envp[])

 argc argv中传递的指针个数,传递给main函数的参数个数

argv[] 传递给主函数的参数列表(char* 类型)

envp[] 传递给主函数的环境变量 (LD_LIBRARY_PATH)

 库函数 fopen fread fwrite fclose fseek(c语言)

Linux系统调用函数 read write close lseek stat

操作系统:管理软硬件资源,并且给用户提供人机交互的平台

(库函数多次调用的效率更高,

    系统调用函数需要在用户态和内核态之间切换,效率较低)

头文件 #include<fcntl.h>

举例

int open(const * pathname,int flag,/*int mode*/)

pathname 指定打开的文件的路径+文件名

flag:操作操作模式

O_RDONLY   O_WRONLY    O_RPWR    O_CREAT

    只读                 只写                  读写             创建

O_APPEND    O_RPWR | OAPPEND    O_TRUNC

  追加       通过按位运算符同时设置多个flag     清空

mode 指定新创建文件的权限只有在O_CREAT时,才会需要

返回值 :-1时出错  成功返回读到的字节数

int write(int fd,void * buff,int datelen)

fd:open 返回值 文件描述符        -----只能打开普通文件

buff:指定需要写入的文件数据的起始位置

datelen 写入的数据长度

返回值 返回-1时出错,成功返回写入的字节数

read函数的变量和意思和write差不多

                       

int close(int fd);//关闭文件

int lseek(int fd,int pos,int flag)-----移动读写偏移量、读写游标

                                 SEEK_SET              文件起始

                                 SEEK_CUR              当前

                                  SEEK_END             结束位置

           

猜你喜欢

转载自blog.csdn.net/obitosbb/article/details/90680279
今日推荐