宏定义问题

来源:百度知道 编辑:UC知道 时间:2024/06/23 17:35:31
#define IBM_PC 是正确的宏定义,为什么?
那它的宏名和宏体分别是什么?

#define IBM_PC
宏名:IBM_PC
宏体:空

#define 后面不一定要跟第2个操作数的,没有它的话就是无值了,只表示第1操作符号已定义。
如果成为已定义的,那么#ifdef就会是真,#ifndef为假。

这个一般多用于宏开关上。

例如:
#ifdef OS_GLOBALS....................................1
#define OS_EXT........................................2
//如果在#ifdef OS_GLOBALS前有过一句#define OS_GLOBALS,那么就会执行#define OS_EXT //否则不执行。

宏名是 IBM_PC
宏体是空

作用、意义是以后可以这样写程序
#ifdef IBM_PC
name = "IBM"
#else
name = "Microsoft"