我想在全局矩阵中进行条件初始化;有可能如下(伪代码)?请提出一些替代方案。
char a[][] = {{1,2,3,4},
#ifdef init
{1,3,4,5}, // I want to make this conditional
#endif
{1,4,5,6}
}
main ()
{
#define init 1;
}
答案 0 :(得分:1)
使a
成为全局指针,然后使用malloc有条件地初始化。
char **a;
int main()
{
if (condition){
a = malloc(some_size);
//initialize the memory here
}
else {
a = malloc(other_size);
//or initialize differently here
}
}