gpt4 book ai didi

使用 strcpy 连接参数

转载 作者:行者123 更新时间:2023-12-04 12:32:55 26 4
gpt4 key购买 nike

我想使用 strcpy 将我所有的参数连接成一个字符指针。我正在这样做,但我的输出只是一个空格。

我使用了 3 个变量:'concat'(应该是我的输出)、'size' 来获取所有参数的长度和'kar' 这是我的参数迭代器。

#include<stdio.h>
#include<string.h>
int main(int argc, char **argv)
{
int kar;
int size;
char *concat;

kar = 1;
size = 0;
//find size to malloc concat
while (kar < argc)
{
size = size + strlen(argv[kar]);
kar++;
}
//malloc size + argc for space characters
concat = malloc(size + argc);
kar = 1;
while (kar < argc)
{
strcpy(concat,argv[kar]);
strcpy(concat," ");
kar++;
}
printf("%s",concat);
}

最佳答案

strcpy() 复制 字符串,正如名称所暗示的那样。所以每次调用它时,都会覆盖现有的字符串。您正在寻找 strcat(),它通过搜索目标中的第一个 0 字节并复制到那里来连接。

如果您首先初始化 concat[0] = 0;,则可以在代码中将 strcpy() 替换为 strcat()

关于使用 strcpy 连接参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45716965/

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