gpt4 book ai didi

c++ - 不使用 strncpy 添加 2 个字符?

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

如何在不使用 strncpy 函数的情况下手动连接两个字符数组?

我可以只说 char1 + char2 吗?

或者我是否必须编写一个 for 循环来获取单个元素并像这样添加它们:

addchar[0] = char1[0];
addchar[1] = char1[1];
etc
etc
addchar[n] = char2[0];
addchar[n+1] = char2[1];
etc
etc

澄清一下,如果char1 = "快乐"char2 = "生日"

我想要 addchar = 生日快乐

最佳答案

对于仅 C 的解决方案,请使用 strncat :

char destination[80] = "";
char string1[] = "Hello";
char string2[] = " World!";


/* Copy string1 to destination */
strncat(destination, string1, sizeof(destination));

/* Append string2 to destination */
strncat(destination, string2, sizeof(destination) - sizeof(string1));

请注意,字符串函数的 strn* 系列比没有 n 的系列更安全,因为它们避免了缓冲区溢出的可能性。

对于 C++ 解决方案,只需使用 std::string 和 operator+ 或 operator+=:

std::string destination("Hello ");
destination += "World";
destination += '!';

关于c++ - 不使用 strncpy 添加 2 个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2716028/

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