我有三个文件。
teacher.c 已提供给我,无法以任何方式更改,其他两个文件由我编码。
teacher.c 具有main()函数,并包含 ass3.h 。
ass3.c 还包括 ass3.h 。 teacher.c 在 ass3.c 中调用函数。
该程序有效,但我需要添加其他功能。
我需要为用户添加指定用户是否想要使用宏或函数的功能(称之为 isAvail())。现在,该程序仅使用 isAvail()函数。
我该如何实施?该要求的摘录是:
“实现 isAvail()作为函数和宏扩展(宏)使用条件处理,用户可以在编译代码中选择宏或函数。如果定义了 IS_AVAIL (宏名称)名称,则应使用宏,如果未定义IS_AVAIL名称,则应使用该函数“
请再次注意,我只能更改Ass3.c和Ass3.h。
请指出正确的方向,如果可能的话,请给我一个例子。如果我需要添加更多细节,请原谅。
谢谢。
答案 0 :(得分:3)
只需检查IS_AVAIL
是否定义为此
#ifdef IS_AVAIL
#define isAvail() MACRO_DEFINITION_HERE
#else
int isAvail(void) {return ?;}
#endif
其中?
是函数应该返回的内容。