越界
数组下标数超过承载量
例如:这样a数组就一定会超过下标限制的10的值。
1 1 int a[10]; 2 2 int i=1; 3 3 while(1) 4 4 { 5 5 a[i]=++i; 6 6 }
溢出:
就是数据超过了本来的上限,就会发生溢出
例如:这里的转化就溢出
int j=1000; long i; i=(long) j*j; /* 先强制int转换成long型,这样就变成了long*int结果是long型 1000*1000不会因为超过int的65536的限制而报错 */ i=(long)(j*j); /* 这里显然是先int*int 1000*1000超过了int的65536的限制,发生溢出 会报错 */