gpt4 book ai didi

在 C 中改变一个字符串的大小,有可能吗?

转载 作者:太空宇宙 更新时间:2023-11-04 08:47:28 24 4
gpt4 key购买 nike

我已经阅读了很多关于这个的内容,但我无法理解,例如,我想更改字符串中的一个字符。

假设我有以下字符串:

char a [] = "stackoverflow" 

然后我想在末尾再添加 5 个字母,或者再删除 2 个字母,等等......得到这样的字符串:

char b [] = "stackoverflowstack"
char b [] = "stackoverfl"

我该怎么做,请有人向我解释一下,在此先感谢...

最佳答案

您可以通过 C 库调用使用动态内存分配,例如 malloc .这需要您有可用的堆内存。我不会进一步讨论这个问题,因为有很多引用资料可用。

如果这不是一个选项,您将需要使用 strncpy并创建足够大的数组来存储部分结果。

例如,在您选择的示例中:

const char* stackOverflow[] = "stackoverflow";
char a[20]; // Enough room for the largest possible string.

strncpy(a, stackOverflow, sizeof(a));
strncpy(a, "stackoverflowstack", sizeof(a)); // Copy null char as well
strncpy(a, "stackoverfl", sizeof(a)); // Copy null char as well

关于在 C 中改变一个字符串的大小,有可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21151410/

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