预计阅读本页时间:-
1.下面的几个组由一个或多个宏组成,宏的后面是使用宏的源代码。在每种情况下代码的结果如何?这些代码合法吗(假设其中的C变量已经声明)?
广告:个人专属 VPN,独立 IP,无限流量,多机房切换,还可以屏蔽广告和恶意软件,每月最低仅 5 美元
2.修改第1题的d组中的定义,使其更可靠。
3.定义一个宏函数,该函数返回两个值中的较小值。
4.定义宏EVEN_GT(X, Y),该宏在X为偶数并且大于Y时返回1。
5.定义一个宏函数,用于打印两个整数表达式及其值。例如,若其参数为3+4和4*12,将打印出:
6.创建#define语句完成下列功能:
a.创建一个值为25的命名常量。
b.使SPACE代表空格字符。
c.使PS()代表打印空格字符。
d.使BIG(X)代表X的值加3。
e.使SUMSQ(X, Y)代表X和Y的平方和。
7.定义一个宏,该宏按下列格式打印一个int变量的名字、值和地址:
8.假设测试程序时要暂时跳过一个代码块,但不从文件中删除该代码块。如何完成这项工作?
9.编写一段代码:如果已定义了宏PR_DATE,则打印执行预处理的日期。
10.下面的程序有什么错误?
11.假设scores是由1000个int值组成的数组,要按降序对该数组的值排序。您打算使用qsort()和比较函数comp()。
a.如何正确调用qsort()?
b.如何正确定义comp()?
12.假设datal是由100个double值组成的数组,data2是由300个double值组成的数组。
a.调用memcmpy()函数将data2中的前100个元素复制到datal中。
b.调用memcmpy()函数将data2中的最后100个元素复制到datal中。