gpt4 book ai didi

c - 由终端参数引起的段错误

转载 作者:行者123 更新时间:2023-11-30 18:28:14 25 4
gpt4 key购买 nike

我尝试从终端参数获取可能是文件名的字符串。我想知道为什么会出现段错误。

#include <stdio.h>
#include <string.h>

int main(char *argv[]){

char somefile[sizeof(argv)];
strncpy(somefile,argv[0],sizeof(argv));

printf("The file name is: %s", somefile);

return 0;
}

最佳答案

要获取 argv 的长度,只需执行 strlen(argv[0]) 即可。

一切都因这个重大问题而变得复杂起来。 strncpy 应该使用字符串的长度,除此之外它似乎应该有效。

关于c - 由终端参数引起的段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48914467/

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