linux系统编程3-read、lseek函数
//read函数原型:ssize_t read(int fd, void *buf, size_t count);
//lseek函数原型:off_t lseek(int fd, off_t offset, int whence);
SEEK_SET 将光标定位到文件头
SEEK_CUR 光标定位到当前位置
SEEK_END 将光标定位到文件尾部
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
int main()
{
int fd;
char *buf = "ChenLiChen hen shuai!";
fd = open("./file1",O_RDWR);
if(fd == -1){
printf("open file1 failed\n");
fd = open("file1",O_RDWR|O_CREAT,0600);
if(fd > 0){
printf("creat file1 success!\n");
}
}
printf("open success : fd = %d\n",fd);
//ssize_t write(int fd, const void *buf, size_t count);
int n_write = write(fd,buf,strlen(buf));
if(n_write != -1){
printf("write %d byte to file1\n",n_write);
}
char *readBuf; //缓冲区
readBuf = (char *)malloc(sizeof(char)*n_write+1);
//ssize_t read(int fd, void *buf, size_t count);
lseek(fd,0,SEEK_SET); //光标定位到文件头,注意读取文件信息是从光标位置开始读取
int n_read = read(fd,readBuf,n_write);
printf("read %d ,context:%s\n",n_read,readBuf);
close(fd);
return 0;
}
linux系统编程3-read、lseek函数相关推荐
- Linux系统编程 37 -makefile2个函数和clean
Linux系统编程 37 -makefile2个函数和clean 学习笔记 一个makefile 就是用一个个规则凑在一起 2个函数 wildcard patsubst wildcard 百搭牌,通配 ...
- linux系统编程3—文件存储函数
文章目录 1.innode 2.dentry 3.stat函数 4.lstat函数 5.access函数.chmod函数.truncate函数 6.link函数 7.unlink函数 unlink的特 ...
- Linux系统编程.NO7——目录操作函数
5. 目录文件管理函数 5.1. 目录文件概念 目录在Linux中也是文件,也有对应的文件指针,每次读目录之前也要先打开目录,然后目录指针就出现了,第一次读就是第一个文件的信息,然后第二次读就是第二个 ...
- linux系统编程下的open函数使用方法
目录 1.句柄(file descriptor 简称fd) 2.使用open前需要先包含头文件 3.参数说明 3.1 参数1(pathname) 3.2 参数2(flags) 3.3 参数3(mode ...
- 嵌入式学习之linux系统编程----1 了解linux编程并且在ubuntu以及ARM上运行测试程序
1.何为linux系统编程? linux系统编程也称为linux下的高级编程,它介于应用层与驱动层之间. 一般来说分为三个层面,分别是:应用层(写一个qt程序或者c程序就属于是应用层面).驱动层(比如 ...
- Linux系统编程之查看文件大小的方法(lseek and stat)
Linux系统编程之查看文件大小的方法:1.使用lseek函数,2.使用stat函数.直接上代码 #include <stdio.h> #include <stdlib.h> ...
- linux系统发送信号的系统调用是,linux系统编程之信号:信号发送函数sigqueue和信号安装函数sigaction...
信号发送函数sigqueue和信号安装函数sigaction sigaction函数用于改变进程接收到特定信号后的行为. sigqueue()是比较新的发送信号系统调用,主要是针对实时信号提出的(当然 ...
- 【Linux系统编程】vfork() 函数详解
00. 目录 文章目录 00. 目录 01. vfork函数 02. fork和vfork区别 03. 父子进程地址空间 04. 附录 01. vfork函数 函数分析 #include <sy ...
- 【Linux系统编程】fork()函数详解
00. 目录 文章目录 00. 目录 01. 进程创建函数 02. 父子进程结构 03. 父子进程地址空间 04. 附录 01. 进程创建函数 #include <sys/types.h> ...
最新文章
- python入门只需20分钟-史上最详细python学习路线-从入门到精通,只需5个月时间...
- 华为服务器显示红色的心跳,服务器心跳检查
- 基于TensorFlow Serving的深度学习在线预估
- [RabbitMQ]消息应答概念_消息手动应答代码
- [蓝桥杯2019初赛]迷宫-bfs+存储路径
- Python 离线 安装requests第三方库
- 如何更sql sever数据库表的所有者
- python怎么数据归一化_基于数据归一化以及Python实现方式
- java poi读取excel公式,返回计算值(转)
- raiserror 在 java_SQL 抛出异常错误信息- RAISERROR (存储过程)
- iOS根据经纬度获得地理名称
- Deep Learning 参数--学习率α、批样本数量batch_size
- linux修改主机名(不重启)
- PHP魔术方法和魔术变量总结
- jQuery 源码系列(十八)class 相关操作
- 《Go程序设计语言》- 第11章:测试
- 微信小程序最新富文本编辑器使用功能实例教程
- PyTorch——device与cuda.device用法
- 镇魔曲网页版服务器选择,镇魔曲网页版职业选择解析 哪个职业好
- excel排序求和:如何统计前几名数据合计 上篇
热门文章
- JAVA Web入门之JSP内置对象的解析及使用(超详细必看)
- error: Failed dependencies: /sbin/service is needed by
- 聊聊这次试用期“被”离职和感悟(大前端组)
- Centos7插入 U盘 时提示:“filesystem type ntfs not configured in kernel”,无法访问
- cdm软件怎么测试硬盘,CDM测试:几乎看不出差距
- mysql 导出 表内容的sql
- python编写程序,输出100以内的所有素数
- 常用Linux的国内源
- canal没有监听到mysql,缓存不能同步
- Spring Boot一次关于本地图片无法访问的怪异事件