c语言程序运行后为什么命令提示符会自动关闭

用vc++6.0的运行的话不会关闭,可是直接双击生成的exe文件的时候就会出现这个问题,是不是系统的问题啊,以前我用的那个系统就没有这个问题。我也不想每次都在程序后加上getch()语句。

  1、并不是说命令提示符关闭,实际上是控制台程序在控制台子系统中运行结束啦,Windows有两个基本的子系统,分别是控制台和图形界面,当用vc/vs编写生成一个可执行文件时,链接器会通过/subsystem参数来指明程序的运行子系统。


  2、如果要看到问题中所谓的“命令提示符”,可以使用system()看到。示例如下:

#include <stdlib.h>
int main()
{
system("pause"); 
return 0;
}

  pause是cmd中的一个命令,通过system函数调用执行!

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-09-12
也许是你的程序有逻辑错误。运行不出来就自动关闭了。编一个简单的输出语句程序看看有没有问题。如果没问题,那就说明你之前编的程序有错误。。。追问

程序是没有错的,在VC下运行完以后不会关闭,但直接运行exe文件就会运行完输出结果的同时就关闭了。

追答

后缀文件没有exe文件,只有cpp文件经过编译连接后在会生成exe执行文件。不知道你打开的到底是是什么文件,请注意一下后缀名,到底都有些什么文件。

第2个回答  2011-09-12
不是系统问题,在编程环境下运行是不会关闭的,但单运行exe文件的话,是要加一个getch(),这是一个好习惯,习惯就好。
有什么不懂的还可以问我追问

其实加一个getch()语句也不是什么麻烦的事,我只是想弄明白为什么以前不加也能正常运行不关闭?

追答

平时我单独运行exe文件时,都是程序结束时就自动关闭了。除非getch(); 你问的什么以前?具体一些?

追问

重装系统和软件以前

本回答被提问者采纳
第3个回答  2011-09-12
在windows系统下,运行命令提示符程序,运行完就会自动关闭的。
VC下 可能是在程序最后加上了暂停语句 所以没有自动关闭
第4个回答  2011-09-13

如果你用的是VC++系列的编译器,
不要用调试(F5),
而是要用开始运行(不调试),在调试的菜单中选,或者快捷键 Ctrl+F5,你也可以自定义工具栏把这个选择放到工具栏上
相似回答