gpt4 book ai didi

c++ - 将 argv 复制到 char 数组时出错

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

我正在尝试将 argv 复制到 char 数组,通过一些在线解决方案但最终导致出现段错误。以下是我使用的代码:

void main (int argc,const char *argv[])
{
char *arr;
arr = (char *) malloc(strlen(argv[1])+1);
strcpy(arr,argv[1]);
}

请帮助确定我做错了什么。

最佳答案

好像argv[1]等于NULL甚至不存在(C标准允许argc可以等于0)。

添加以下检查

char *arr;

if ( argc > 1 )
{
arr = (char *) malloc(strlen(argv[1])+1);
strcpy(arr,argv[1]);
}
else
{
// print some error message
}

关于c++ - 将 argv 复制到 char 数组时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26669887/

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