gpt4 book ai didi

c - 将一个字符串附加到一个二维的char数组?

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

我是 C 的新手,如果我有一个 char 的二维数组和一个单独的字符串,我有以下问题:

char strings[4][6] = {"hello", "Hi", "bye"};
char lonestring[6] = "lone";

我想将这个字符串添加到二维数组中,使其变为:{"hello", "Hi", "bye", "lone"}

char strings[3] = lonestring;

但是当我使用下面的代码时,如果出现错误,是哪里出了问题?

最佳答案

char strings[4] = lonestring; 试图定义一个名为 strings 的对象,但是 char strings[3][5] 已经存在。因此是一个错误。

要将 lonestringstring 内容复制到 strings[3],请使用 strcpy()

strcpy(strings[3], lonestring);

通常的问题适用:确保目的地足够大 - 正如本例所示。


对于 char strings[4][5],使用 "hello" 初始化 strings[0] 不会导致string as strings[0] 缺少一个空字符@David C. Rankin .

OP 后来被编辑为 char strings[4][6]


注意:这不会添加strings,它只是为对象的部分分配了新值。一旦在 C 中定义了一个数组,它的大小就不能改变。

简单地说:{"hello", "Hi", "bye", ""} 变成了 {"hello", "Hi", "bye", "lone"}

关于c - 将一个字符串附加到一个二维的char数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52808157/

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