在 C 中连接/追加字符串流

标签 c pointers char append

enter image description here

我将如何做 c 中图像上显示的示例。即连接/append 字符串到一个字符串。字符串来自 char *array;。下面的功能会起作用吗?谢谢

ptr = strcat( s1, s2 );

然后我想打印连接的字符串

printf("the string is = %s ",joinedstring);

最佳答案

strcat 期望 s1 足够长以适应所有串联的结果。这意味着目标必须是 17 个字符长,因为字符串有 16 个字符,您还需要一个 char 作为空终止符。

此外,结果必须以空字符串开头,像这样:

char res[17] = {0};
strcat(res, "this");
strcat(res, ":");
strcat(res, "is");
... // and so on

关于在 C 中连接/追加字符串流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36534530/

相关文章:

c - 为什么 sizeof(x++) 不增加 x?

c - 对 malloc 返回的指针进行类型转换是更好的做法吗?

c++ - 在 C++ 中将指针传递给函数

java - 在java中将int转换为char

c - 在 C 程序中,我在跟踪使用循环生成从 1 到 1000 的罗马数字的代码时遇到问题?

php - C中的欧氏距离计算

c - 为什么 var$ 编译但 var@ 不编译?

Win CE 6 的 C 文件编译

c++ - 为什么不能指向指针,在没有强制转换的情况下访问结构成员?

c++ - 为什么两个声明的 char* 变量获得相同的地址?