用dev-C++写C语言程序,调试的时候屏幕总是一闪而过。搜索了许久,终于找到了一个成功的解决方法。
新建一个pause.h的头文件即可
/* Pause.h */
#include "cstdlib"
#include "iostream"
#ifndef __CPAUSE__
#define __CPAUSE__
class CPause{
static void system(){
std::system("pause");
}
public:
CPause(){
std::atexit(&CPause::system); }
}m_pause_;
#endif //__CPAUSE__
其中atexit是指定一个函数在程序结束时运行, m_pause_是CPause的实例。它的构造函数会在main()主函数之前执行, 其实也就是利用全局对象的这个特性。
运行例子:
/* example.cpp */
#include <iostream>
#include "pause.h" // 现在只要定义pause头文件, 要可以把输出屏停住了.
using namespace std;
int main(){
cout << "Hello, World" << endl;
return (0);
}
新建一个pause.h的头文件即可

/* Pause.h */
#include "cstdlib"
#include "iostream"
#ifndef __CPAUSE__
#define __CPAUSE__
class CPause{
static void system(){
std::system("pause");
}
public:
CPause(){
std::atexit(&CPause::system); }
}m_pause_;
#endif //__CPAUSE__
其中atexit是指定一个函数在程序结束时运行, m_pause_是CPause的实例。它的构造函数会在main()主函数之前执行, 其实也就是利用全局对象的这个特性。
运行例子:
/* example.cpp */
#include <iostream>
#include "pause.h" // 现在只要定义pause头文件, 要可以把输出屏停住了.
using namespace std;
int main(){
cout << "Hello, World" << endl;
return (0);
}
在使用DEV-C++进行C语言编程时,遇到程序运行后立即关闭导致无法查看输出的情况。通过创建一个名为pause.h的头文件,包含`cstdlib`和`iostream`库,使用`atexit()`函数注册`CPause`类的静态成员函数`system()`,在程序结束时调用`pause`命令,成功实现了程序结束时暂停的功能。

9160

被折叠的 条评论
为什么被折叠?



