gpt4 book ai didi

c - 如何测试具有多个输入的 C 程序?

转载 作者:行者123 更新时间:2023-11-30 20:50:11 26 4
gpt4 key购买 nike

我有 Linux Ubuntu,我想测试我的程序,有人给了我多个输入的 .txt 文件。现在我想使用 .txt 文件中写入的输入来运行该程序。有很多输入,所以我不想手动输入它们。 Linux 终端中是否有一些命令可以运行 C 并将输入写入文件中?谢谢您的回答

最佳答案

我认为您正遭受着“标准输入”==“键盘”这一非常常见的误解。别再这么想了。如果您已经编写了一个从标准输入读取的程序,那么您所需要做的就是将文本文件与标准输入相关联。在 shell 中,您可以使用重定向运算符来完成此操作:

./a.out < input.txt

如果您有多个输入,您可以轻松地在每个输入上单独调用您的程序:

for file in *.txt; do
echo "Running on input: $file"
./a.out < "$file"
done

或者您可以对所有输入运行一次程序:

cat *.txt | ./a.out

有很多很多方法可以做你想做的事情,并且有很多灵 active 可以做不同的事情。您可能想要将程序的输出与预期输出进行比较,然后您就可以编写成熟的测试套件。例如:

if ! ./a.out < input.txt | cmp expected-output -; then
echo "TEST FAILED" >&2
exit 1
fi

关于c - 如何测试具有多个输入的 C 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49630606/

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