
C/C++
IPJMC
这个作者很懒,什么都没留下…
展开
-
宏定义中的do...while(0)
如果你是C++程序员,我有理由相信你用过,或者接触过,至少听说过MFC, 在MFC的afx.h文件里面, 你会发现很多宏定义都是用了do...while(0)或do...while(false), 比如说:#define AFXASSUME(cond) do { bool __afx_condVal=!!(cond); ASSERT(__afx_condVal); __analysis_assume(__afx_condVal); } while(0) 粗看我们就会觉得很奇怪,既然循环里面只执行了一次,我要转载 2011-03-25 13:36:00 · 456 阅读 · 0 评论 -
GCC笔记
GCC 编译流程: GCC在编译C/C++程序时,会经过一下4步 1.预处理 gcc -E hello.c -o hello.i 2.编译 gcc -S hello.i -o hello.s 3.汇编 gcc -c hello.s -o hello.o 4.链接 gcc hello.o -o hello 一步到位方法:gcc hello.c...2012-11-22 11:15:29 · 198 阅读 · 0 评论 -
GDB 笔记
通过gcc编译时必须使用-g选项才能使用gdb调试 gcc -g hello.c -o hello gdb的选项是非常多的,在gdb里,把命令按类划分,可以通过help xxx来查看相应的帮助 gdb>help #显示全部帮助的类 gdb>help running #显示运行的帮助 gdb>help breakpoints #查看断点相关的命令 使用示例: ...2012-11-22 13:44:01 · 239 阅读 · 0 评论 -
make笔记
Makefile中一个项由以下结构所组成: target: dependency_files command 比如,有两个文件hello.c,hello.h,创建的目标体为hello.o,执行命令是gcc -c hello.c,Makefile就可以这样写: hello.o: hello.c hello.h gcc -c hello.c 一个稍微复杂一点...2012-11-22 15:49:51 · 194 阅读 · 0 评论 -
使用automake
转载过来,自己加工了一点点,留着参考吧:) 使用automake主要会用到aclocal、autoscan、autoconf、autoheader和automake这几个命令。首先简略的说一下用automake生成makefile的步骤:(1)创建源代码文件,使用”autoscan”生成configure.scan文件,将其重命名为configure.ac,并做适当修改,然后使用”acl...原创 2012-11-22 16:06:33 · 154 阅读 · 0 评论