• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > C++开发 > 什么是数组下标越界

    什么是数组下标越界

    作者: 分类:C++开发 点击: 3,392 次
    wordpress CMS主题:ssmay主题

      数组下标越界:是一个程序初学者最容易犯的错误之一。C++编译器是根据元素的大小(类型)和编号(下标)来计算数组中一个值存放在哪里的。

       

      例如:定义一个数组int a[4]; 而a[2]是这个数组的一个元素,因为该数组类型是整型,而整型变量占地址内存4位,所以a[2]的值应存放在4*3字节处。下标是从0开始的,所以如果要写入a[4]的值,就是数组下标越界,该数组的最大下标是3。但编译器不管,它照样写入,这样一来,它会写入到其它的内存地址,如果该内存地址中原来存有数据,这些数据就会被修改,那就出现错误,甚至程序崩溃。

      形象一点地说,打个比方,把数组比作一个杯子,这只杯子只能装400ml的水,而我们一下子倒了500ml的水,那么这个杯子装满400ml的水后,剩下的100ml 的水就装不进这个杯子了,这100ml 的水就会溢到旁边的装有酱油的杯子里。



      QQ二维码

    文章作者:高时银博客
    本文地址:http://wanlimm.com/77201402171082.html
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.