最近初次接触Linux这么高端的东西,有种进城的感觉。进了linux,发现城里人说话做事的方式都很不一样。

个人感觉,初次接触linux主要的痛点在于命令行交互的方式,这就要求我接受城里人的思维,which is 遇到一个软件,先--help,因为城里人不会提供一个图形界面,把所有功能按钮展示在我面前。再就是文件组织形式的不同,linux的文件组织方式是用户目录式。

进入linux我首先学了关于c语言实现文件操作的内容,好几天都搞不明白。磨呀磨呀,磨了好几天,终于在今天磨明白了。遂把这块的代码发出来。

内容包括:文件的创建,读写,记录化读写。从功能和内容上来说,跟前一篇文章基本没区别。但这是在Linux下的操作,所以还是有区别的,乡下洗剪吹和城里造型沙龙的区别,恩。

参考了这篇大神的博客,大神写的非常好~http://blog.csdn.net/byxdaz/article/details/1517357,里面的例子也给的非常好。

创建open()

我们可以看到,这里有好多好多头文件呀,具体每一个里面包括什么呢,那就留给勇敢的少年去探索了。总之我的方法就是,凡是涉及文件操作相关的,就把下列这一大坨头文件直接放上去。

关于open()函数,可以百度一下,看看那里面的标志位怎么写。

#include "fcntl.h"

#include "unistd.h"

#include "sys/types.h"

#include "sys/stat.h"

#include "stdio.h"

int main (){

int fp; //其中,fp是个文件标识符,也就是传说中的FID

fp=open("work.txt",O_WRONLY|O_CREAT,777); //每当我懒得设置权限的时候就直接777,意思是谁都可以对这个文件进行任何操作

printf(" %d \n",fp);

close(fp);

return 0;

}

这样的效果就是,在当前目录下建立了一个名叫“work”的txt文件。只要ls一下就可以看到了。

读写,read()和write()

关于read(),和write()的介绍在大神博客里有,而且也有一个例子,实现了main函数传参,并复制文件内容到另一个文件。我这里没有通过main函数传参,但也实现了对一个文件输入,并复制到另一个文件中去。当然,要实现对文件名和路径的传参也很容易。

#include #include #include #include #include #include #include #define SIZE 1024 int main (char argc,char **argv){ int fop,fwt; char buffer[SIZE]; //打开文件 fop=open("fileA.txt",O_WRONLY|O_TRUNC|O_CREAT,S_IRUSR|S_IWUSR); printf ("what do you want to put into the fileiA ?\n"); gets(buffer); printf("\nNow lets see what are in the buffer %s\n",buffer); //写文件 write(fop,buffer,strlen(buffer)); close(fop); //读文件到内存中的buffer里 fop=open("fileA.txt",O_RDONLY); read (fop,buffer,SIZE); printf("\nNow lets see what are in the buffer %s\n",buffer); //新建一个文件 fwt=open("fileB.txt",O_RDWR|O_CREAT,S_IRUSR|S_IWUSR); //把buffer里的内容写到文件里去 write(fwt,buffer,strlen(buffer)); close(fwt); close(fop); return 0; }

linux下c语言读写文件操作,linux下的系统级c语言文件读写操作相关推荐

  1. 通过Xshell7连接云服务Linux系统级上传文件

    通过Xshell7连接云服务Linux系统级上传文件 前提准备条件: 1.有一台云服务实例 2.云服务安装了CentOS 7.8 64位系统(根据自己系统环境) 3.记住云服务实例的用户名和密码(忘记 ...

  2. html5播放qsv文件吗,qsv格式文件怎么播放?xp系统播放qsv格式文件的方法

    qsv是一个视频格式文件?是爱奇艺的视频文件,只能在爱奇艺的播放器播放上.一些用户xp系统没有安装爱奇艺播放器,是不是就不能播放qsv格式文件?能不能在其他的视频播放器上播放?当然可以的,大家只要转换 ...

  3. win10同步服务器文件夹在哪,win10系统电脑一键实现文件夹视图同步的操作办法...

    win10系统使用久了,好多网友反馈说关于对win10系统win10系统电脑一键实现文件夹视图同步的操作方法设置的方法,在使用win10系统的过程中经常不知道如何去对win10系统win10系统电脑一 ...

  4. 四川大学c语言期末试题答案,四川大学计算机学院2005级C语言程序设计试卷(2份,有答案)...

    内容简介: 四川大学计算机学院2005级C语言程序设计试卷(一) 一.单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内.每小题2分,共18分) 1.以下程序段中循 ...

  5. win10语言包在c盘哪里,win10系统通过卸载语言包释放c盘空间的操作方法

    win10系统通过卸载语言包释放c盘空间的操作方法? 很多win10用户在使用电脑的时候,会发现win10系统通过卸载语言包释放c盘空间的的现象,根据小编的调查并不是所有的朋友都知道win10系统通过 ...

  6. 操作系统语言包在c盘哪里,win10系统通过卸载语言包释放c盘空间的具体教程

    win10系统电脑使用过程中有不少朋友表示遇到过win10系统通过卸载语言包释放c盘空间的状况,当出现win10系统通过卸载语言包释放c盘空间的状况时,你不懂怎样解决win10系统通过卸载语言包释放c ...

  7. win10语言包在c盘哪里,win10系统通过卸载语言包释放c盘空间的图文办法

    有关win10系统通过卸载语言包释放c盘空间的操作方法想必大家有所耳闻.但是能够对win10系统通过卸载语言包释放c盘空间进行实际操作的人却不多.其实解决win10系统通过卸载语言包释放c盘空间的问题 ...

  8. 打开游戏时提示计算机缺失文件,电脑打不开系统显示缺失dll文件怎么办

    电脑如果出现丢失dll文件,有时会影响到系统,导致开不了机.下面由学习啦小编为你整理了电脑打不开系统显示缺失dll文件怎么办的解决方法,希望对你有帮助! 电脑打不开显示缺失dll文件解决方法如下 1首 ...

  9. 单片机c语言位运算写法,单片机与嵌入式系统中C语言的位运算小记

    原标题:单片机与嵌入式系统中C语言的位运算小记 编了个PIC的项目,对里的还是蛮有感悟的,特此记录一下. 譬如说,在程序中定义了一个char类型的变量, purge_short_enable_flag ...

最新文章

  1. STC自动高速下载线
  2. go get 加 -u 和不加 -u 参数的区别
  3. 软件的Express Edition是什么版?
  4. 如何使用 MySQL 安装后自带的帮助文档
  5. 癌中之王:基质微环境塑造胰腺癌瘤内结构|Cell
  6. ES6学习笔记02:let 与 const
  7. $.getJSON()应用
  8. php 合并重复数据合并单元格,通过js合并表格重复出现的数据
  9. 求一批整数中出现最多的个位数字
  10. POJ3414(BFS+[手写队列])
  11. 10.15 iptables filter表小案例;10.16—10.18 iptables nat
  12. svn各版本代码比较
  13. Mac OS清除图标缓存
  14. 看我如何用Python来分析《斗破苍穹》
  15. 单机100万连接,每秒10万次请求服务端的设计与实现(三) - 变量共享、超线程与高性能队列
  16. 全国智能制造(中国制造2025)创新创业大赛华北赛区决赛完美收官
  17. FPGA开发技巧备忘录——目录
  18. TRS_WCM(拓尔思信息技术有限公司)内容协作平台平台置标经验攻略
  19. vi编辑器终端程序的运行(hello world)
  20. 如何把位图转成矢量图

热门文章

  1. 算法介绍——快速排序
  2. 我的世界光影mod怎么用_我的世界1.7版本光影水反MOD安装教程
  3. noVNC使用:将noVNC整合进django项目
  4. 服务器 芯片型号查询,查询服务器:OS、CPU、内存、硬盘信息
  5. 720全景图在线下载
  6. 2D游戏案例:《诗梦游记》
  7. 文件名批量复制到表格,操作步骤
  8. java iframe 跨域,jsp与iframe跨域访问的一个方法
  9. PostgreSQL相似文本查询
  10. 网游代练向欧美市场渗透:代练员月入5000元