gpt4 book ai didi

c - 如何连接指针数组

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

我正在编写一个程序,我需要连接两个数组。

例如,如果我有:

  int max =100;
char *append = "Hello";
char *pStr = malloc(max);

如何将 append 连接到 pStr 上?

最佳答案

使用可以在这两者之间进行选择:

char *pStr = malloc(max);
char* str1 = "Hello ";
char* str2 = "Wor";
char* str3 = "ld";
strcpy(pStr, str1);
strcat(pStr, str2);
strcat(pStr, str3);

char *pStr = malloc(max);
char* str1 = "Hello ";
char* str2 = "Wor";
char* str3 = "ld";
pStr[0] = '\0';
strcat(pStr, str1);
strcat(pStr, str2);
strcat(pStr, str3);

在你的例子中

strcpy(pStr, append);

pStr[0] = '\0';
strcat(pStr, append);

strcpy 不需要 \0。它只是复制目标字符串(加上'\0')
strcat目标字符串 连接到源字符串。源必须 为空终止,这就是pStr[0] = '\0' 的原因。

max 必须足以容纳所有字符串加上终止字符 \0

瓦尔特

关于c - 如何连接指针数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22739817/

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