gpt4 book ai didi

c++ - 动态字符串数组 - C

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

我有一个这样定义的字符串数组:

char** arrNames;

现在我想给它动态分配一个大小。我有一个接收新大小和上面数组的函数。它是这样的:

char** AddName(char** arrNames, int nNameCount)
{
char** arrTemp;

arrTemp = new char[nNameCount];
...
// And later I change the pointer of arrNames to arrTemp
}

现在这显然行不通了。那么我应该怎么做呢?

提前致谢。

最佳答案

如果你想要 nNameCount 个字符串,你需要分配一个字符数组的数组(即一个字符串数组):

char** AddName(char** arrNames, int nNameCount)
{
char** arrTemp = new char *[nNameCount];

for (int i = 0; i < nNameCount; ++i) arrTemp[i] = new char[STRING_SIZE];
...
}

在此之后,您可以使用 arrTemp[index] 访问每个字符串。请注意,您仍然需要初始化每个字符串。

关于c++ - 动态字符串数组 - C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5778062/

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