栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【无标题】

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【无标题】

系统级程序编程:linux系统文件及操作

今天系统级程序设计课程开课了,和我想的并不一样,这门课听老师说偏底层一点。

今天主要是用C语言为工具讲解了在Linux系统下文件的操作。
所用函数:
1.open()

int open(const char *pathname, int flags[,mode_t mode])

2.read()

ssize_t read(int fd, viod *buf, size_t count)

3.write()

ssize_t write(int fd, const void *buf, size_t count);
//count:最大输出字节数

4.lseek()

offf_t lseek(int fd, off_t offest, int whence)

5.close()

int close(int fd)
//功能描述:关闭文件

案例实现:

#include 
#include 
#include 
#include 
#include 
int main(){
	int fd = 0;
	char filename[20] = "aaa.txt";
	fd = open(filename, O_RDWR|O_EXCL|O_TRUNC, S_IRWXG);
	if (fd == -1){
		perror("file open error.n");
		exit(-1);
	}
	int len = 0;
	char buf[100] = {0};
	scanf("%s", buf);
	len = strlen(buf);
	write(fd, buf, len);
	close(fd);
	printf("-----------------------n");
	fd = open(filename, O_RDONLY);
	if(fd == -1){
		perror("file open error.n");
		exit(-1);
	}
	off_t f_size = 0;
	f_size = lseek(fd, 0, SEEK_END);
	lseek(fd, 0, SEEK_SET);
	while(lseek(fd, 0, SEEK_CUR) != f_size){
		read(fd, buf, 1024);
		printf("%sn", buf);
		
	} 
	close(fd);
	return 0;


}

通过这个实例学习,我更加熟练的掌握的文件操作的五个函数,收益匪浅。

OK。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/853274.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号