退出C程序

时间:2013-02-08 16:41:36

标签: c

我是C编程新手。在下面的程序中,我只是立即尝试退出C程序而不看任何其他对话框,如果程序收到输入“退出”。

我正在尝试使用exit(0);完成此操作但是,在程序退出之前输出类似

的内容
success
process exited with return value 0
Press any key to continue...

我正在尝试避免此对话框并立即退出程序。这可能吗?

我很感激任何帮助。

非常感谢提前!

我的C代码:

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


int main(void)  {
    char command1[256], command2[256];
    printf("# ");
    scanf("%s", command1);
    if(strcmp(command1,"quit")==0){
        printf("success");
        exit(0);
    }else{
        printf("unknown command");
    }

system("PAUSE");
return 0;

}

5 个答案:

答案 0 :(得分:6)

您看到的消息实际上是由Visual Studio调试器生成的。它并非真正来自你的程序。

如果您想验证您的程序实际上没有显示任何消息(也没有等待按键),只需尝试从Windows命令提示符运行它。您也可以尝试使用Visual Studio以“发布”模式运行程序。这也将证实这一点。

调试器显示该信息的原因只是为了帮助您了解程序的运行情况。

答案 1 :(得分:0)

该输出不是来自您的程序,而是来自运行程序的程序。很可能是“Visual Studio”,但我希望其他类型的IDE可能会做类似的事情。

答案 2 :(得分:0)

您可以发布执行环境的详细信息吗?好像你的进程正在被另一个应用程序(也许是专门的shell)监视退出代码,正在打印“按任意键继续”行

答案 3 :(得分:0)

process exited with return value 0当然不是来自您的代码,而是来自输入和输出中间的程序。

我在命令行(Mac OSX)上编译了这个,并提供了以下输出:

James:Desktop iPhone$ gcc code.c 
James:Desktop iPhone$ ./a.out
# quit
successJames:Desktop iPhone$ 

请注意,我没有到达system("PAUSE");

答案 4 :(得分:0)

如果您正在使用Dev-C ++并且想要删除该消息,请执行以下操作:

工具菜单 - &gt; 环境选项 - &gt; 常规标签

然后取消选中返回后暂停程序选项。

来源:http://www.cplusplus.com/forum/general/89249/