ITPub博客

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

C语言中数组溢出是什么

IT职场 作者:R-B 时间:2021-09-11 09:46:31 0 删除 编辑

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/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-09-03

  • 博文量
    183
  • 访问量
    10152