我想要做以下事情:
char a[] = { 'A', 'B', 'C', 'D'};
但我不想单独写这些字符。我希望有像以下这样的东西
#define S "ABCD"
char a[] = { S[0], S[1], S[2], S[3] };
但是这段代码无法编译(gcc会提示“初始化元素不是常量”)。
我尝试将 #define 行替换为:
const char S[] = "ABCD";
但似乎这并没有帮助。
我应该怎么做(或类似的方式),让我将“ABCD”作为正常的“字符串”编写,而不是分开的四个字符?
顺便说一句,人们似乎没有正确阅读问题...
我无法使以下代码编译:
const char S[] = "ABCD";
char t[] = { S[0], S[1], S[2], S[3] };
char u[] = { S[3], S[2], S[1], S[0] };