gpt4 book ai didi

c - (C 编程) 如何将字符串插入字符数组,然后打印出该数组的所有元素?

转载 作者:太空狗 更新时间:2023-10-29 15:56:33 26 4
gpt4 key购买 nike

我有这个以字符数组 temp 形式呈现的字符串。而我想将这个字符数组插入到另一个数组 temp_list 中,然后打印出这个数组的内容。换句话说,将许多字符数组存储在一个数组中。任何人都可以告诉我这是否可行,我怎样才能让它发挥作用?

这是我要完成的示例:

int main()
{
char temp[5] = "begin";
char temp_list [10];
temp_list[0] = temp;

for (int i = 0; i < strlen(temp_list); i++)
{
printf("Labels: %s,", temp_list[i]);
}
}

当我运行这个程序时,它打印出乱码。

任何形式的指导将不胜感激。谢谢。

编辑:

感谢您的回答。他们都非常乐于助人。但我还有一个问题……如果我有多个字符数组要插入到 temp_list 中怎么办?多次使用 strcpy 似乎不起作用,因为我假设该函数基本上用 strcpy 传递的字符串替换了 temp_list 的全部内容?

最佳答案

关于字符串有很多误解。您的数组 temp 需要足够大以存储空终止符,因此在这种情况下它的大小至少需要 6:

char temp[6] = "begin"; // 5 chars plus the null terminator

要复制字符串,请使用strcpy:

char temp_list[10];
strcpy(temp_list, temp);

要打印它,传递temp_list,而不是temp_list[i],你也不需要那个循环:

printf("%s\n", temp_list);

最终的程序可能是这样的:

int main()
{
char temp[6] = "begin";
char temp_list[10];
strcpy(temp_list, temp);
printf("%s\n", temp_list);
return 0;
}

关于c - (C 编程) 如何将字符串插入字符数组,然后打印出该数组的所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54869558/

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