Linux文件编程函数
一 简述几个基本知识——
1 Linux应用程序编程所用到的函数,主要有两种方式提供:
系统调用方式 函数库方式
2 如何学习这些函数?
三步学习法:
第一步:借助工具书,查找函数名;《Unix环境高级编程》
第二步:在Linux系统中,利用man命令查看函数信息,并填写函数学习手册。
第三步:实践,编写代码。
3 VI概念——文件描述符
性质: 一个数字
特别含义:其功能类似于身份证号码,通过身份证号码,可以将对应的公民;在Linux系统中,每一个 打开的 文件,都对应一个数字,通过这个唯一的数字,可以找到这个打开的文件,并对其进行操作,比如读、写等。
二 首先学习系统调用方式提供的函数——
4 学习以下7个函数——
打开文件 创建文件 关闭文件 读文件 写文件 文件定位
复制文件描述符
5 打开文件——open
范例1:打开已经存的文件 open.c
#include sys/types.h
#include sys/stat.h
#include fcntl.h
void main()
{
int fd;/*文件描述符*/
fd = open(/home/test.c,O_RDWR);
if(fd0)
printf(Open file fali!\n);
else
printf(Open file sucessfully!\n);
}
范例2:利用open函数创建新文件 open_creat.c
#include sys/types.h
#include sys/stat.h
#include fcntl.h
void main()
{
int fd;/*文件描述符*/
fd = open(/home/test1.c,O_RDWR | O_CREAT,0755);
if(fd0)
printf(Open file fali!\n);
else
printf(Open file sucessfully!\n);
}
6 创建文件——creat
在《》一书中,找到函数名
利用man creat查找函数的帮助文件
编写程序代码——
#include sys/types.h
#include sys/stat.h
#include unistd.h
#include fcntl.h
void main()
{
int fd;
fd = creat(/home/test2.c,0621);
if(fd0)
printf(create file fail!\n);
else
printf(Create file successfully!\n);
}
7 在《》一书中,找到函数名
man close 查找函数原型
编写程序代码close.c
#include sys/types.h
#include sys/stat.h
#include unistd.h
#include fcntl.h
void main()
{
int fd;
fd = open(/home/test2.c,O_RDWR | O_CREAT,0755);
if(fd0)
printf(create file fail!\n);
else
printf(Create file successfully!\n);
int ret;
ret = close(fd);
if(ret == 0)
printf(File has been closed!\n);
else
printf(Fail to close!\n);
}
8 首先查找一下读文件的函数read()
man所查询的是一个手册,首先从章节一里面找关键字,如果没有找到,再到后续章节中找。
man 2 read
man 章节一 命令
章节二 系统调用
章节三 库函数
范例:
#include fcntl.h
void main()
{
int fd;
fd = open(/home/test1.c,O_RDWR | O_CREAT,0755);
if(fd0)
printf(create file fail!\n);
else
printf(Create file successfully!\n);
char buf[10];/*定义一个数组,有10个空间;用来存放读取出的数据*/
ssize_t count;
count = read(fd,buf,5);/*将读取出的字符存放到buf指
您可能关注的文档
最近下载
- 22G101 三维彩色立体图集.docx VIP
- 旅游景区质量等级划分与评价细则.doc VIP
- 深度解析(2026)《ISO 277992016 Health informatics — Information security management in health using ISOIEC 27002》(20标准解读.pptx VIP
- 大学生创新与创业基础教程(大学生创新创业教育课程)全套教学课件.pptx
- 22G101图集下载的文档.pptx VIP
- 《大学生创新创业教育(第三版)微课版》全套教学课件.pptx
- 中国集装箱行业十四五发展分析及投资前景与战略规划研究报告2025-2028版.docx VIP
- gnss全球导航卫星系统.pptx VIP
- 重庆市2026年高二(上)期末联合检测(康德卷)数学+答案.pdf VIP
- 2025年11月26日达州兴川能源有限公司国家电投川东北高效清洁煤电综合利用一体化项目21000MW新建燃煤机组配套500kV升压站工程.pdf VIP
原创力文档

文档评论(0)