编译中的一些条件分支 #if #else #endif
2014-05-20 14:54
344 查看
~~~~我的生活,我的点点滴滴!!
我们经常看到源码中有很多
#if 0 if 1
.... ....
#else #else
.... ....
#endif #endif
等等之类的东西,我们不知道所措,其实他们作为调试是很好用的一种方法,当然也可以设置宏开关也是不错的调试法
上面的 #if 0 表示编译时不编译,即运行也不会进去,#if 1会编译进去,看下面的测试样例:
输出结果:
输出结果:
说明if 0是没有进去的。
我们经常看到源码中有很多
#if 0 if 1
.... ....
#else #else
.... ....
#endif #endif
等等之类的东西,我们不知道所措,其实他们作为调试是很好用的一种方法,当然也可以设置宏开关也是不错的调试法
上面的 #if 0 表示编译时不编译,即运行也不会进去,#if 1会编译进去,看下面的测试样例:
输出结果:
#if 0 qDebug() << "00000"; QString fsp = argv[1]; int fsp_num = fsp.toInt(); QString video = argv[2]; int videox = video.toInt(); MainWindow w(fsp_num, videox); #endif #if 1 qDebug() << "11111"; MainWindow w; w.show(); #endif
输出结果:
/home/user1/hzfbuild/VideoGet-Debug/VideoGet 启动中... 11111
说明if 0是没有进去的。
相关文章推荐
- 条件编译(#ifdef #else #endif #if)
- C语言中条件编译命令(#if #else #endif)
- 条件编译(#ifdef #else #endif #if)
- C语言中条件编译命令(#if #else #endif)(
- 也说条件编译 #if #else #endif && Conditional Attribute
- 条件判断语句(if...else)与条件编译(#if .... #else ... #endif)
- C语言中条件编译命令(#if #else #endif)
- 大型机学习之具体技术之-JCL练习(七)-IF/THEN/ELSE/ENDIF结构及嵌套条件分支结构
- C语言中条件编译命令(#if #else #endif)
- C语言预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- C语言预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- C语言的条件编译#if, #elif, #else, #endif、#ifdef, #ifndef
- C语言和c++预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- 条件分支结构(switch-case)(if-else if-else) 2011.05.09
- delphi的常用条件编译指令---{$IFDEF} {$UNDEF}{$IFDEF}{$ELSE}{$ENDIF}
- VC 编译连接(#if #ifdef #ifndef #else #endif defened)
- vc++学习篇(三)——预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- C语言预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- vc++学习篇(三)——预处理命令之条件编译(#ifdef,#else,#endif,#if等)
- C语言预处理命令之条件编译(#ifdef,#else,#endif,#if等)