linux中read 如何从文件读取数据

 我来答
百度网友9830ec763
2010-07-27 · TA获得超过488个赞
知道小有建树答主
回答量:477
采纳率:0%
帮助的人:402万
展开全部
#include <stdio.h>
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

ptr---读入的buf
size--读入的大小
nmenb--读入的数据块,取1
stream--文件指针
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
孟羽然
推荐于2017-09-16 · TA获得超过2976个赞
知道小有建树答主
回答量:1308
采纳率:70%
帮助的人:578万
展开全部
注意:以下实例省略了错误处理。
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

typedef struct
{
char name[20];
int age;
} Person;

int main(int argc, char **argv)
{
// open
int fd = open("name.file", O_RDWR|O_CREAT, 0666);
// write
Person zhang3;
memset((void*)&zhang3, 0x00, sizeof(Person));
strcpy(zhang3.name, "zhang3");
zhang3.age = 42;
write(fd, (void*)&zhang3, sizeof(Person));
// lseek
lseek(fd, 0, SEEK_SET);
// read
Person li4;
memset((void*)&li4, 0x00, sizeof(Person));
read(fd, (void*)&li4, sizeof(Person));
printf("%s\n", li4.name);
printf("%d\n", li4.age);
// close
close(fd);
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式