
如果C
程序运行到之后没能正常
结束的话就不会退出到终端会,有两个方法可以解决该问题\x0d\x0a1,在运行程序之前在命令后面加个&让程序在后台运行。\x0d\x0a例如 ./test &这个时候程序就不会一直阻塞,如果御颂需要终止改蔽档程序可以查看该程序的进程号然后杀死该进程例如:ps -aux 找到刚才运行的程序,然后kill 进程号 就可以结束改程序了。\x0d\x0a2.如果程序已经运行了,终端镇并郑已经阻塞,那么就使用Ctrl +C 来结束改程序,结束阻塞。如果 *** 作系统是Windows等成熟的系统的话,程序运行结束之后系统会自动把内存收回。否则的话,由于可用内存逗桥减少,机宽芹器上的程序慎指毕运行会越来越慢,甚至完全无法运行……只要机器彻底重启,被占用的内存会被释放一闪而过是程序自动结束,同时编译器没有提供结果驻留功能。对于此种情况,可以手动在代码结尾增加驻留功能的函数。常用的有如下两种:
1 通过getch函数驻留。
getch会等待从屏幕的输入,在main函数退出前,增加
getch()
调用,系统会等待输入,直到有新的输入,才会退出界面。
2 通过system("pause")来实现驻留。
在main退孝核出前调用
system("pause")
会调用系统的pause函数,提示哗姿并实现按任意键退出程序效果。
如果是已经编译好的C语言程序,可以通过开始->运行,键入cmd后回车。
在打开的命巧芦掘令行窗口,将可执行文件拖动到窗口上,再回车即可运行该程序,在此窗口不会出现闪退,从而观察运行结果。
由于该问题仅在windows平台出现,所以以上介绍均针对windows平台。
评论列表(0条)