
C语言程序运行出现exe停止工作的原因是因为内存溢出和编译器错误。
第一种:内存溢出
内存溢出(out of memory)通俗理解就是内存不够,程序所需要的内存远远超出了主机内安装的内存所承受大小,就叫内存溢出。系统会提示内存溢出,有时候会自动关闭软件,重启电脑或者软件后释放掉一部分内存又可以正常运行该软件。
第二种:编译器错误
部分编译器由于所使用的标准不同(例如在一台机器上使用的可能是C99标准,而另一台机器上使用的是C11标准),或是因为编译器链接库的损坏,在少数情况下也可能导致程序出现不限于崩溃退出的异常错误,通常解决方法是到编译器官方网站下载最新版的IDE安装。
举例说明:
1、除以零。
2、数组越界:int a[3]a[10000000]=10。
3、指针越界:int * pp=(int *)malloc(5 * sizeof(int))*(p+1000000)=10。
4、使用已经释放的空间:int * pp=(int *)malloc(5 * sizeof(int))free(p)*p=10。
5、数组开得太大,超出了栈的范围,造成栈溢出:int a[100000000],没有开辟内存 List L=(List)malloc(sizeof(struct LNode))。runtime error (运行时错误)就是程序运行到一半,程序就崩溃了。
扩展资料:
C特有特点:
1、C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
2、C语言传递参数均是以值传递(pass by value),另外也可以传递指针(a pointer passed by value)。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字(reserved keywords),使变量、函数命名有更多d性。
5、部份的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。
7、预编译处理(preprocessor)让C语言的编译更具有d性。
参考资料:C语言-百度百科
1.源代码错误,陷入死循环,内存和CPU满了,自然就崩溃了。解决。看看代码是否正确。2.算法太耗CPU或者内存或者显卡。解决。换个耗费硬件资源少的算法。
3.程序过于复杂,电脑配置不够。
解决。对硬件进行升级或者买个新的高配置组装机。
4.涉及云计算,人工智能,大数据等编程。①安装虚拟机,模拟需要的环境,进行实验或者试验。②在网上租个云环境,再进行试验。这个需要money的。一般我不支持这样做。
有些网页由于代码编写或者网站问题,会导致浏览器崩溃或者假死,重装一下系统就好。
重装系统步骤:
1、首先重启电脑,启动电脑进入上面的界面后按“delete”键进入下图界面。
2、移动键盘左边的上下左右光标键,选择下图的指示。
3、选择好效果后按回车进入。
4、在那个圈圈的地方按回车进入,选择下图所示的然后按光标选择CDROM,按回车确认。
5、然后按F10保存。
6、电脑将重启后展示上面的界面,把XP光盘放到光驱中。
7、等出现以下界面后按回车继续 *** 作。
8、选择重装系统安装在那个盘符,直接回车就好。
9、这个是将C盘以FAT文件系统格式化C快速格式化C盘。
10、按F键格式化硬盘,接着按回车继续 *** 作。
11、重装系统正式进入格式化C盘的 *** 作,格式化成功后就直接复制系统文件到C盘中了。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)