prev up next   top/contents search

comp.lang.c FAQ 列表· 第 10.14 题

我能使用一个#ifdef#define一行使用,像这样以两种不同的方式定义东西?

	#define a b \
	#ifdef whatever
		c d
	#else
		e f g
	#endif


不能。你不能“让预处理器处理它本身”,可以这样说。你可以做的是使用两个完全独立的#define行,取决于#ifdef设置

	#ifdef whatever
	#define a b c d
	#else
	#define a b e f g
	#endif

参考:ISO 第 6.8.3 节,第 6.8.3.4 节
H&S 第 3.2 节,第 40-1 页


prev up next   contents search
关于此 FAQ 列表   关于 Eskimo   搜索   反馈   版权

Eskimo North 托管