设为首页 加入收藏

TOP

Linux下C编程入门笔记
2014-11-24 07:32:39 来源: 作者: 【 】 浏览:1
Tags:Linux 编程 入门 笔记

Linux文件的IO编程应该算是每个入门者最先涉及的,我也不例外。希望通过BLOG的形式,记录下自己每天学习的点点滴滴,我相信滴水穿石,尽管记录的文字都比较简单,对于高手而言抑或没有什么技术含量,但我坚信坚持到最后,就是大牛。


好了,废话说了不少了,开始我的笔记吧。


LINUX下对文件的操作同其它平台系统一样,无外乎创建文件,打开文件,关闭文件,读文件,写文件,拷贝文件,对文件进行权限的控制和管理(这涉及到锁,以后再讨论),另外在这里有一点一定要牢记,那就是在Linux操作系统里,硬件设备也当作文件来对待,我认为这样最大的好处是可以实现文件和设备的统一管理,比如我在上面提到的操作(打开文件,关闭文件,读文件,写文件.....),也通用于硬件设备的操作(打开设备,关闭设备,读设备件,写设备......).明白了这一点,就可以很发挥想象怎么去搞定串口,并口,USB设备........等一系列外围设备了.(是不是很吃惊).


文件IO操作是Linux环境编程基础中的基础.语法和API上看似简单,但真正的应用起来,有时恐怕并不如我最开始想象的那么轻松,所以既然是菜鸟入门,还是要把基础打好.为了让自己找到乐趣和自信,我决定从最简单的函数开始.creat创建文件.


create函数的原型如下:(大家可以查询manpages.chm)


1.2.int creat(const char *pathname, mode_t mode);


参数代表的意思,manpages里讲得确实已经非常清楚了.下面我写了一个简单的例子.(这个例子确实是太简单啦,但是养成动手的好习惯会让每一位程序员受益)


#include
#include


#include
#include
#include


void create_file(char *filename){
if(creat(filename,0755)<0){
printf("create file %s failure!\n",filename);
exit(EXIT_FAILURE);
}else{
printf("create file %s success!\n",filename);
}


}


int main(int argc,char *argv[]){
int i;
if(argc<2){
perror("you haven't input the filename,please try again!\n");
exit(EXIT_FAILURE);
}


for(i=1;i create_file(argv[i]);
}


exit(EXIT_SUCCESS);
}



这个例子没有太多要说的了,但还是想啰嗦一下,创建文件时,脑海里为何飘出一个0755,这是文件的读写执行权限,就是RWX和4 2 1码的对应关系相加,manpages里也有详细说明


运行的结果如下:


[linuxidc@localhost Project]$ ./create temp1 temp2
create file temp1 success!
create file temp2 success!


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux中的sleep和alarm在延时作用.. 下一篇在Linux系统下编译多个Fortran程序

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 并发工具类:提 (2025-12-25 20:25:44)
·Java面试技巧:如何 (2025-12-25 20:25:41)
·Java并发编程中的线 (2025-12-25 20:25:38)
·C 语言 - cppreferen (2025-12-25 19:50:27)
·《C 语言入门教程》 (2025-12-25 19:50:23)