在科学计算时,经常会遇到“溢出”,这是指数值超出了机器的位所表示的范围。
数据溢出
在计算机中,当要表示的数据超出计算机所使用的数据的表示范围时,则产生数据的溢出。
溢出原因
数据类型超过了计算机字长的界限就会出现数据溢出的情况。导致内存溢出问题的原因有很多,比如:
1、使用非类型安全(non-type-safe)的语言如 C/C++ 等。
2、以不可靠的方式存取或者复制内存缓冲区。
3、编译器设置的内存缓冲区太靠近关键数据结构。
扩展资料:
内存溢出问题是 C 语言或者 C++ 语言所固有的缺陷,它们既不检查数组边界,又不检查类型可靠性(type-safety)。众所周知,用 C/C++ 语言开发的程序由于目标代码非常接近机器内核,因而能够直接访问内存和寄存器,这种特性大大提升了 C/C++ 语言代码的性能。
只要合理编码,C/C++应用程序在执行效率上必然优于其它高级语言。然而,C/C++ 语言导致内存溢出问题的可能性也要大许多。其他语言也存在内存溢出问题,但它往往不是程序员的失误,而是应用程序的运行时环境出错所致。
参考资料来源:百度百科-溢出