我知道,C 允许我这样做。
char *array[] = {"String1", "String2",...};
但我想做。
char **array 或 char *array[3];
array = {"String1", "String2"...};
因为我认为使用循环来填充数组非常糟糕,而不是像展示的那样进行初始化。
谢谢。
最佳答案
否 -- 初始化语法仅用于初始化,而不是赋值,因此它必须是数组定义的一部分,而不是之后。之后,你所拥有的将是分配一个数组而不是真正地初始化它,而 C 不支持数组分配。
关于C初始化数组或结构,我可以在声明后做吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5144845/