2017年11月8日
摘要: #include <fcntl.h> int fcntl(int fd,int cmd,.../*int arg */) fcntl 的第三个参数是一个整数 或者 一个指向结构体的指针(用于记录锁) fcntl函数有5中功能: 1 复制一个已有的操作符(cmd=F_DUPFD或F_DUPFD_CLO 阅读全文
posted @ 2017-11-08 17:02 呵呵大侠小明 阅读(252) 评论(0) 推荐(0) 编辑
2017年10月23日
摘要: 1:查看命令的帮助。 2:查看可被内核调用的函数的帮助。 3:查看函数和函数库的帮助。 4:查看文件的帮助(主要时/dev目录下的文件)。 5:查看配置文件的帮助。 6:查看游戏的帮助。 7:查看其他杂项的帮助。 8:查看系统管理员可用命令的帮助。 9:查看和内核相关文件的帮助。 阅读全文
posted @ 2017-10-23 18:57 呵呵大侠小明 阅读(211) 评论(0) 推荐(0) 编辑
2017年10月21日
摘要: 使用管道需要注意以下4种特殊情况(假设都是阻塞I/O操作,没有设置O_NONBLOCK 标志): 1如果所有指向管道写端的文件描述符都关闭了(管道写端引用计数为0),而仍然有进程 从管道的读端读数据,那么管道中剩余的数据都被读取之后,再次read会返回0,就像读到文件 末尾一样。 2如果有指向管道写 阅读全文
posted @ 2017-10-21 15:06 呵呵大侠小明 阅读(389) 评论(0) 推荐(0) 编辑
摘要: Linux中wait的用法: 系统中的僵尸进程都要由wait系统调用来回收。 函数原型#include <sys/types.h> #include <sys/wait.h> pid_t wait(int *status); 进程一旦调用了wait就立即阻塞自己,由wait自动分析是否当前进程的某个 阅读全文
posted @ 2017-10-21 14:45 呵呵大侠小明 阅读(1091) 评论(0) 推荐(0) 编辑
2017年10月20日
摘要: Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。 ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。 ps工具标识进程的5种状态码: D 不可中断 uninterrupti 阅读全文
posted @ 2017-10-20 20:02 呵呵大侠小明 阅读(287) 评论(0) 推荐(0) 编辑
2017年9月6日
摘要: 此处用函数递归的方式对二叉树进行拷贝,从第四行代码开始分析此处if(root == NULL)限定了递归函数终止条件,而返回值为NULL是因为下面对二叉树叶的左右指向进行赋值。 第10和13行,创建了新的节点左子树和右子树,此两条语句用来遍历二叉树中所有的结点,并且接受新创建节点的地址。 从16行开 阅读全文
posted @ 2017-09-06 20:36 呵呵大侠小明 阅读(246) 评论(0) 推荐(0) 编辑
2017年8月31日
摘要: 结构体作为一种自定义数据类型,结构类似于数组,但是结构体名与数组名有很大的区别:数组名是作为内存中固定不可修改的地址常量而存在,而结构体相当于int,double之类的系统内定类型,代表了一段内存空间的内容。 如图上代码,讲结构体类型以16进制输出结果为510,相当于将两个char型数据16和5组合 阅读全文
posted @ 2017-08-31 19:09 呵呵大侠小明 阅读(1120) 评论(0) 推荐(0) 编辑
2017年8月28日
摘要: 参照《c与指针》,在c语言中左移时,不论算术左移还是逻辑左移效果都是相同的。而且对于有符号和无符号类型执行相同的操作,即按照二进制位向左左移N位。例如: int型变量a在内存中转换为2进制储存 1010 1111 1111 1111 1111 1111 1111 1111为一个负整数,b在内存中储存 阅读全文
posted @ 2017-08-28 16:53 呵呵大侠小明 阅读(1854) 评论(0) 推荐(0) 编辑