1.atoi()函数
函数声明:int atoi(const char *nptr);
头文件:#include<stdlib.h>
函数说明:将字符串转换成整数. 例如:atoi("777");
这个函数怎么这么好用呢!以前竟然不知道!
2.exit()和return的区别
exit(0):正常运行程序并退出程序
exit(1):非正常运行程序导致程序退出
return:返回函数,若在非主函数中,则会退出函数并返回一个值
return是关键字;exit()是一个函数
return是语言级别的,表示了调用堆栈的返回;exit是函数调用级别的,表示了一个进程的结束
3.linux下的捕获:errno和strerror的使用
经常在调用linux系统API(设备程序编程接口)时出现一些错误.比如open(),creat()之类的函数会返回-1,出现错误,调用失败.这时需要知道错误u的原因,就用到了errno这个全局变量(也有人说是宏定义).
头文件:#include<errno.h>
每次程序调用失败的时候,系统会自动用错误代码填充errno这个全局变量,这样只需要解读errno这个全局变量就可以获得失败的原因(printf("errno = %d\n", errno);).
然而,errno有一百多个宏定义,对着编号一个一个地查询太麻烦,所以就可以用strerror来解读error(strerror(error);).
strerror(error);:通过错误的标号,获得描述错误的字符串,将单纯的错误标号转为字符串描述.
4.memset()
函数声明:void *memset(void *s, int ch, size_t n);
头文件:#include<string.h>
函数说明:将一段内存块中填充某个给定的值.它是对较大的结构体或数组进行清0操作的一种最快的方法.
用法如:memset(&lock, 0, sizeof(struct flock));
5.软链接和硬链接的区别
昨天杨博东学长给我讲了软链接和硬链接的区别.
简单来说,软链接和硬链接的区别就是:
硬链接是有着相同inode号仅文件名不同的文件,它是通过inode号进行索引文件的;
软链接类似于windows下的快捷方式,它是通过路径进行索引文件的,一旦这个路径不存在或更改,则这个软链接就会成为死链接.
在此链接一篇杨博东学长的博客,以便日后回顾这个知识点.
这写就是我这三天学到的一些杂七杂八的点,这几天学到的其他知识都比较系统.比如linux的文件结构 文件的输入输出 文件的属性操作 文件的移动删除及目录操作,这些内容回顾的时候可以翻看书上的笔记,就不写在博客上了.而这些很杂的点是容易遗忘的,就记录在这里作为笔记.