首页 > IT职业 > IT职场 > C语言中数组溢出是什么

1、当数组的长度大于我们定义数组时,数组的长度就会出现数组溢出的问题。
2、当数组溢出时,编译器会在编译时报告错误。正常的数组溢出是指输出数组时多出的部分会被丢弃。
但是,如果数组以字符串的形式溢出,当我们还输出数组时,编译器可能会正常通过,但输出不正常。因此,在定义数组和给数组赋值时,我们应该小心避免数组溢出的发生。
实例
#include<stdlib.h>
#include<stdio.h>
void main()
{
unsigned char a[3] = {0};
a[0] = 200;
a[1] = 200;
a[2] = a[0] + a[1]; //unsigned char 取值范围:0~255 ,超出取值范围
printf("a:%d b:%d c:%dn", a[0], a[1], a[2]);
system("pause");
}
/*
输出:
a:200 b:200 c:144
请按任意键继续. . .
*/
以上就是C语言中数组溢出的介绍,希望对大家有所帮助。更多C语言学习指路:C语言教程
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/4560/viewspace-2828118/ ,如需转载,请注明出处,否则将追究法律责任。