gpt4 book ai didi

c - 在C中将字符串常量读取为非常量变量

转载 作者:行者123 更新时间:2023-11-30 20:00:56 27 4
gpt4 key购买 nike

const char* string_b10_e2 = {"base 10"}; //base 10

有没有办法读取非常量字符串变量中的值“以 10 为底”?我知道我不能使用 char*,如下所示

char * str,
str = string_b10_e2; //not allowed

因为它违背了保持字符串不变的 promise 。
但是有没有办法将值读入非常量字符串中?

提前致谢。

最佳答案

在初始化后,您无法使用传统的赋值运算符将字符串分配给 char * 指针。

但是,您可以使用strcpy 函数。如果你声明它只是一个指针而不是一个固定长度的数组,你还需要为字符串分配内存:

char *str = NULL;
str = malloc(20);
if(str == NULL) return;
strcpy(str, "Hello World!\n")
printf("%s", str);
free(str);
str = NULL;

关于c - 在C中将字符串常量读取为非常量变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37972444/

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