gpt4 book ai didi

char * 到字符串文字?

转载 作者:行者123 更新时间:2023-12-02 00:37:41 26 4
gpt4 key购买 nike

var1 必须包含一个字符串,无论它是否为空,否则我的程序将出现段错误。但是 gcc 提示空字符串文字是常量而 var1 不是。以下是我正在谈论的示例。

我该如何解决这个问题?

warning: assignment discards qualifiers from pointer target type

char *var1 = NULL;
if(var1 == NULL)
{
var1 = malloc(strlen(var2) + 1);
strcpy(var1, var2);
}else{
var1 = ""; // warning points here
}

编辑:

字符串文字是不可修改的,所以我使用这个标志来警告我:

-Wwrite-strings

最佳答案

要分配一个空字符串,请执行以下操作:

var1 = malloc(1); /* 1 byte */
var1[0] = '\0';

关于char * 到字符串文字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3954002/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com