编写一个C程序mmapcopy.c,  使用mmap将一个任意大小的磁盘文件复制到stdout。  输入文件的名字必须作为一个命令行参数来传递。-笔试面试资料

这是qklbishe.com第18223 篇笔试面试资料
提供答案分析,通过本文《编写一个C程序mmapcopy.c,  使用mmap将一个任意大小的磁盘文件复制到stdout。  输入文件的名字必须作为一个命令行参数来传递。-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。

答案:
编写一个C程序mmapcopy.c,  使用mmap将一个任意大小的磁盘文件复制到stdout。  输入文件的名字必须作为一个命令行参数来传递。

编写一个C程序mmapcopy.c,  使用mmap将一个任意大小的磁盘文件复制到stdout。  输入文件的名字必须作为一个命令行参数来传递。 HelloNext
#include <stdio.h> #include <unistd.h> #include <sys/stat.h> #include <fcntl.h> #include <sys/mman.h> #include <stdlib.h>  int main(int argc,char* argv[]){     if(argc!=2){         char s[30];         sprintf(s,"使用方法: %s 文件名n",argv[0]);         fputs(s,stderr);         exit(1);     }      struct stat statbuf;      int fd = open(argv[1],O_RDONLY);     stat(argv[1],&statbuf);     // 获取文件大小     int length = statbuf.st_size;      void* bufp = mmap(NULL,length,PROT_READ,MAP_SHARED,fd,0);     int len = write(1,bufp,length);      close(fd);     munmap(bufp,length);     return 0; } 

欢迎访问我的博客

今天 15:09:36 回复(0)

文章部分来自互联网,侵权联系删除
www.qklbishe.com

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 编写一个C程序mmapcopy.c,  使用mmap将一个任意大小的磁盘文件复制到stdout。  输入文件的名字必须作为一个命令行参数来传递。-笔试面试资料

提供最优质的资源集合

立即查看 了解详情