C语言程序运行出现exe停止工作的原因是因为内存溢出和编译器错误。
第一种:内存溢出
内存溢出(out of memory)通俗理解就是内存不够,程序所需要的内存远远超出了主机内安装的内存所承受大小,就叫内存溢出。系统会提示内存溢出,有时候会自动关闭软件,重启电脑或者软件后释放掉一部分内存又可以正常运行该软件。
第二种:编译器错误
举例说明:
1、除以零。
2、数组越界:int a; a=10。
3、指针越界:int * p; p=malloc); *=10。
4、使用已经释放的空间:int * p; p=malloc);free; *p=10。
5、数组开得太大,超出了栈的范围,造成栈溢出:int a,没有开辟内存 List L=malloc)。runtime error 就是程序运行到一半,程序就崩溃了。
C特有特点:
1、C语言是一个有结构化程序设计、具有变量作用域以及递归功能的过程式语言。
2、C语言传递参数均是以值传递,另外也可以传递指针。
3、不同的变量类型可以用结构体(struct)组合在一起。
4、只有32个保留字,使变量、函数命名有更多弹性。
5、部份的变量类型可以转换,例如整型和字符型变量。
6、通过指针(pointer),C语言可以容易的对存储器进行低级控制。