
Linux编程学习
文章平均质量分 65
qq_35536179
这个作者很懒,什么都没留下…
展开
-
如何编写一个优秀的GNU C的宏
题目:定义一个宏,求两个数的最大值。合格答案#define MAX(x,y) x > y ? x : y当运行如下语句时会出Bug:printf("MAX=%d",MAX(1!=1,1!=2));中等答案#define MAX(x,y) (x) > (y) ? (x) : (y)当运行如下语句时会出Bug:printf("MAX=%d",3 + MAX(1,2));原因:+运算符的优先级大于比较运算符>良好答案#defin.原创 2021-09-03 20:40:27 · 133 阅读 · 0 评论 -
使用Autotools自动生成Makefile的步骤
使用GNU Autotools创建Makefile的过程可以分为如下步骤:1. 编写元文件configure.ac2. 执行aclocal。aclocal将扫描configure.ac中使用的M4宏,并到系统中收集这些宏的定义,然后将这些宏定义 复制到源码顶层目录下的aclocal.m4中。3. 调用autoconf,将configure.ac中的宏展开为shell脚本形式的configure。4. 编写元文件Makefile.am。5. 调用automake。automake..原创 2021-04-08 18:26:05 · 565 阅读 · 0 评论