我有一个头文件,其中包含
#define PROTOTYPE(s) s
这有什么意义呢?似乎它将只是用其自身替换输入。
周围还有其他大量指令,但只有一个指令似乎被检查了是否定义:#ifndef PROTOTYPE
。我在HDF4头文件中找到了执行以下操作的位置:#define PROTOTYPE
。因此,这些都不能真正解决我的问题。似乎还是没用的。
使用方法如下:
CS_RETCODE clientmsg_callback PROTOTYPE((
CS_CONTEXT * context,
CS_CONNECTION *connection,
CS_CLIENTMSG *clientmsg));
这是使用Sybase Open Client的项目的一部分。clientmsg_callback稍后在这里使用:
ct_callback(context, NULL, CS_SET, CS_CLIENTMSG_CB,
(CS_VOID *)clientmsg_callback);
我将从这里开始一个示例程序:
clientmsg_callback稍后实现。我认为该示例最初是考虑到C而不是C ++编写的。也许与它有关?
#if
/#ifdef
/#ifndef
/#else
指令的地方可能有不同的定义呢?当在其他宏(尤其是near#
或)中使用时,可能会有所不同##
。可能只是一种评论风格。没有足够的背景来真正回答。