例如:
#define{
VAR1 53
VAR2 71
etc.
}
有可能吗?如果是这样,怎么样?
答案 0 :(得分:2)
#define
- 子句是预处理器的命令,在将源代码传递给编译器之前,它会对源代码进行文本替换。 #define
的语法是
#define VALUE TEXT_TO_REPLACE_VALUE
就是这样。可能有一些方法可以有条件地创建表达式,但不能在单个语句中。
答案 1 :(得分:2)
例如,您可以使用enum
:
enum Gender
{
GENDER_UNKNOWN = 0,
GENDER_MALE = 1,
GENDER_FEMALE = 2
};
然后,您可以在C ++中声明类型Gender
或在C中声明enum Gender
的变量,它应该只接受其中一个元素作为值,否则编译器将抛出警告。
但是enum
不接受#define
所做的任何声明,你基本上只能用整数。
答案 2 :(得分:0)
你可以为VAR创建一个数组,并声明你想要的有价值的数据。 然后你可以输入这样的值,一个例子在下面
示例:我想将5个值存储到VAR
中int VAR[5];
for(i=0; i<5; i++){
scanf("%d", &VAR[i]);
}