gpt4 book ai didi

c - 如何调试使用 gdb 中辅助 txt 文件输入的程序?

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

我想调试一个文件,比如 file.c,这个文件从一个 txt 文件中读取信息,比如 input.txt。所以通常情况下,要编译和运行程序,我会执行以下操作:

gcc -std=c99 -g file.c -o file.exe

为了调试,我会尝试以下操作:

gdb ./file.exe input.txt

但是这不起作用并且失败并返回 No such file exits。 '(null)': Bad address 当程序 file.c 尝试打开 argv[1] 中指定的文件,即 input.txt 时。

我试过以下方法:

1. gdb ./file.exe
(gdb) run < input.txt
2. gdb ./file.exe
b main
(gdb) r
(gdb) call (int)dup2(open("input.txt",0),0)
$1 = 0

所有结果都与上述相同...没有这样的文件存在。 '(null)': 错误地址

代码只是:

FILE *input = fopen(argv[1],"r");

最佳答案

gdb --args ./file.exe file.txt
b main
run

或者做

gdb ./file.exe
b main
run file.txt

关于c - 如何调试使用 gdb 中辅助 txt 文件输入的程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55910736/

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