我正在尝试测试 ac 程序是否已正确编译和执行。
假设我刚刚在 ac 程序中打印Hello World ,所以我想编写 ac 程序来检查
第一个程序已返回 0 或已返回其他内容。
我怎样才能做到这一点。
提前致谢。
我正在尝试测试 ac 程序是否已正确编译和执行。
假设我刚刚在 ac 程序中打印Hello World ,所以我想编写 ac 程序来检查
第一个程序已返回 0 或已返回其他内容。
我怎样才能做到这一点。
提前致谢。
这通常取决于平台,并且取决于您如何从另一个程序运行一个程序。如果您使用 C 库函数system
,您可以运行该程序,然后从该程序中读取状态码,如下所示:
int returnCode = system("./hello-world-program");
if (returnCode == 0) {
...
}
但是,您通常最好使用操作系统级别的原语来执行此操作。Linux 使用fork
andexec
来处理这个问题,您可以通过将该wait
函数与其他代码结合使用来读取给定进程 ID 号的子进程的退出代码。Windows 有自己的机制来执行此操作,不幸的是,我并不熟悉。
希望这可以帮助!