数组越界

所谓的数组越界,简单地讲就是指数组下标变量的取值超过了初始定义时的大小,导致对数组元素的访问出现在数组的范围之外,这类错误也是 C 语言程序中最常见的错误之一。
在 C 语言中,数组必须是静态的。换而言之,数组的大小必须在程序运行前就确定下来。C 语言并不检验数组边界,数组的两端都有可能越界,从而使其他变量的数据甚至程序代码被破坏。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
#include <iostream> 
using namespace std; 

int main() 
{ 
	int arr[2]={3,2};
	 arr[3]=1;
	cout << arr[3] <<endl; 
	cout << arr[-3]; 
	return 0; 
} 
Scroll to Top