gpt4 book ai didi

c - 重新分配一个字符串数组

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

目前,我在重新分配数组字符串时有些困惑。如果我有这个:

char** str = (char**)malloc(100*sizeof(char*));
str[0] = (char*)malloc(sizeof(char)*7); //allocate a space for string size 7
//some other code that make the array full

我的问题是,如果我想将 str[0] 重新分配到 8 的大小,我是否需要同时重新分配 strstr[0] 像这样:

str = (char**)realloc(str,sizeof(char*)*101);
str[0] = (char*)realloc(str[0],sizeof(char)*8);

这是正确的吗?

最佳答案

当你想添加一个字符串时,你可以重新分配主数组(改变字符串的数量)。当您想要更改字符串的长度时,您可以重新分配一个单独的字符串。

因此,只有 realloc str[0] 如果您想更改字符串的缓冲区大小。

关于c - 重新分配一个字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15513226/

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