我需要一个完整的字符串作为另一个字符串的一个字符。
const char *const_string = "FOOBAR";
char *character_string = malloc(1024);
// character_string = const_string[3];
如何使最后一行(注释)生效?
答案 0 :(得分:3)
看来你的意思是以下
void do_something(char *str, int idx)
{
str[0] = glob_str[idx];
str[1] = '\0';
}
您可以向函数添加一个检查,指出索引不在glob_str
指向的字符串文字之外。
答案 1 :(得分:0)
鉴于
char *glob_str = "test test"; // glob_str is literal string and cannot be modified
然后
glob_str[0] = val; // modification won't work
您需要更改为
char glob_str[] = "test test";
请参阅此question