摘要: 3种循环(while循环、do...while循环和for循环)可以相互嵌套。书中给出了6种合法形式。另外两种是否合法呢?(1)饮品店加盟[cpp] view plaincopy在CODE上查看代码片派生到我的代码片 while() {... for(;;) {...} }(2)[cpp] view plaincopy在CODE上查看代码片派生到我的代码片 do{ ... while() {...} ... }while(); 阅读全文
posted @ 2014-02-20 09:46 将夜 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 内核使用了大量不同的宏来标记具有不同作用的函数和数据结构。如宏__init 、__devinit 等。这些宏在include/linux/init.h 头文件中定义。编译器通过这些宏可以把代码优化放到合适的内存位置,以减少内存占用和提高内核效率。下面是一些常用的宏:? ?__init ,标记内核启动时使用的初始化代码,内核启动完成后不再需要。以此标记的代码位于.init.text 内存区域。它的宏定义是这样的:? #define _ _init _ _attribute_ _ ((_ _section_ _ (".text.init")))? ?__exit ,标记退出代码 阅读全文
posted @ 2014-02-20 09:45 将夜 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 信号时软件中断,基本上所有应用程序都处理信号,信号是处理异步事件的方法。10.2信号概念 每个信号都有一个名字,以SIG开头,在头文件中,信号被定义为正整数。编号为0的信号称为空信号。对信号的处理方式:忽略此信号、捕捉此信号、执行系统默认动作。一些信号详细说明:SIGABRT 调用abort函数产生此信号,进程异常终止。SIGCHLD 在一个信号终止或者停止时,这个信号发送给父进程。SIGCONT 此信号发送给当前需要继续运行,而且处于停止状态的进程。SIGEMT 指示一个现实定义的硬件故障。饮品店加盟www.qidouzl.comSIGHUP 如果 终端接口检测到一个连接断开,发送到与终端相 阅读全文
posted @ 2014-02-20 09:37 将夜 阅读(311) 评论(0) 推荐(0) 编辑