gpt4 book ai didi

c++ - 未初始化的值用法,使用sprintf或strcat时出错

转载 作者:行者123 更新时间:2023-12-03 07:09:08 27 4
gpt4 key购买 nike

下面给出的代码在我的IDE上可以正常使用。但是,当我在codeforces上提交此文件时,出现了一个错误,指向sprintf行。

Probably, the solution is executed with error 'uninitialized value usage'



我使用sprintf而不是 strcat来连接两个数组,如stackoverflow答案中所建议。
但这给了我同样的错误。
char a[101],b[101],c[201],d[300];
fgets(a,101,stdin);
fgets(b,101,stdin);
fgets(c,201,stdin);
// strcat(d,a);
sprintf(d, "%s%s",d,a);

最佳答案

如果您已经初始化了两个字符串,则只能使用strcat()

由于您尚未在d中放入任何内容,因此您无需将其串联。只需使用astrcpy()的内容复制到其中即可。

strcpy(d, a);

另外,即使您已初始化d,也无法使用
sprintf(d, "%s%s",d,a);

如果它也是源字符串之一,则使用与 sprintf()的目标相同的字符串是无效的。

关于c++ - 未初始化的值用法,使用sprintf或strcat时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62340326/

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