C语言编译系统是否会检查数组使用时的下标越界?如果程序中出现数组元素引用的越界问题时会产生甚么问题?
答案:2 悬赏:0 手机版
解决时间 2021-03-02 09:53
- 提问者网友:像風在裏
- 2021-03-02 04:40
C语言编译系统是否会检查数组使用时的下标越界?如果程序中出现数组元素引用的越界问题时会产生甚么问题?
最佳答案
- 五星知识达人网友:杯酒困英雄
- 2021-03-02 05:26
不会检查,如果越界引用,可能发生意想不到的情况
比如访问没有权限访问的内存,导致程序出错崩溃
比如访问没有权限访问的内存,导致程序出错崩溃
全部回答
- 1楼网友:拾荒鲤
- 2021-03-02 05:43
int a[2]; -- c / c++ 语言中叫它是 “声明”,声明 a 是整型数组,有2个元素。
c / c++ 语言 下标 从0起计。 声明 int a[2]; 它只含 数组元素, 下标变量 a[0],a[1]。
语句中 写了 a[0]=0; a[1]=1; a[2]=2; a[3]=3; 虽然越界, 语法检查 时 可能 不 报错。也能 输出打印。
但运行 时 会 出错 -- 提示要关闭程序。
编译器有时并不是很聪明的。 所以编写程序时,我们自己要避免 下标越界。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯