CodeLite执行代码后cmd窗口立即关闭的问题及解决咨询
问题根源
程序执行完printf("hello world\n");后就直接终止进程了,cmd窗口作为程序的运行终端,进程结束后会自动关闭。另外注意:你的代码里void main()并非C语言标准写法,标准规范是int main(),且结尾需添加return 0;,虽然部分编译器兼容void main(),但遵循标准写法能避免潜在问题。
解决办法
方案一:修改代码添加等待逻辑
通过在程序末尾加入等待输入的代码,让程序暂停直到用户操作:
- 修正代码并使用
getchar():#include <stdio.h> int main() { printf("hello world\n"); fflush(stdout); // 清空输出缓冲区,避免残留换行被getchar读取 getchar(); // 等待用户输入任意字符 return 0; } - 或者使用
system("pause")(需引入头文件):#include <stdio.h> #include <stdlib.h> int main() { printf("hello world\n"); system("pause"); // 显示"请按任意键继续..."并等待 return 0; }
方案二:通过CodeLite设置保持窗口打开
无需修改代码,直接调整CodeLite的运行设置:
- 打开项目后,点击顶部菜单栏
Project->Settings(或右键项目选择Settings) - 在弹出的设置窗口中切换到
Run选项卡 - 勾选
Keep terminal open after execution(不同版本的选项描述可能略有差异,找类似“执行后保持终端打开”的选项) - 保存设置后重新运行程序,窗口会在程序结束后保持打开,直到你手动关闭。
内容的提问来源于stack exchange,提问作者Eitan Ratner
相关产品推荐
相关产品推荐

