相关疑难解决方法(0)

如何从字符串初始化char数组

我想做以下事情

char a[] = { 'A', 'B', 'C', 'D'};
Run Code Online (Sandbox Code Playgroud)

但我不想单独写这些字符.我想要类似的东西

#define S "ABCD"

char a[] = { S[0], S[1], S[2], S[3] };
Run Code Online (Sandbox Code Playgroud)

但这不会编译(gcc说'初始化元素不是常数').

我尝试用#define替换

const char S[] = "ABCD";
Run Code Online (Sandbox Code Playgroud)

但这似乎没有帮助.

我怎么能这样(或类似的东西)让我把"ABCD"写成普通的'字符串',而不是四个单独的字符?

PS似乎人们没有正确地阅读这个问题......

我无法编译以下代码:

const char S[] = "ABCD";
char t[] = { S[0], S[1], S[2], S[3] };
char u[] = { S[3], S[2], S[1], S[0] };
Run Code Online (Sandbox Code Playgroud)

c

15
推荐指数
3
解决办法
10万
查看次数

标签 统计

c ×1