功夫Panda

记录一些遇到的问题

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年6月13日

摘要: 一般,在开发测试阶段用debug版本,而上线发布用release版本。使用Makefile定制编译不同版本,避免修改程序和Makefile文件,将会十分方便。读了一些资料,找到一个解决方法,Makefile预定义宏与条件判断,结合make预定义变量,进行条件编译。比如,有一个test.cpp,包含这段代码#ifdef debug//your code#endif你希望在debug版本要执行它,在release版本不执行。我们可以写这样的一个Makefile: 1 ver = debug 2 3 ifeq ($(ver), debug) 4 ALL: test_d 5 CXXFLAGS = -. 阅读全文
posted @ 2012-06-13 18:04 功夫Panda 阅读(48838) 评论(0) 推荐(1) 编辑

摘要: 原文链接:http://jakielong.iteye.com/blog/7716631. 用户态和内核态的概念区别究竟什么是用户态,什么是内核态,这两个基本概念以前一直理解得不是很清楚,根本原因个人觉得是在于因为大部分时候我们在写程序时关注的重点和着眼的角度放在了实现的功能和代码的逻辑性上,先看一个例子:1)例子C代码voidtestfork(){if(0==fork()){printf(“createnewprocesssuccess!\n”);}printf(“testforkok\n”);}这段代码很简单,从功能的角度来看,就是实际执行了一个fork(),生成一个新的进程,从逻辑的角度 阅读全文
posted @ 2012-06-13 15:12 功夫Panda 阅读(470) 评论(0) 推荐(0) 编辑