关于数组内容未赋值的位置

来源:5-2 off-by-one error数组下标

tobeabee

2021-12-03

老师,你说未赋值的arr[8]和arr[9]的值是不确定的,但我的实现里这两个位置看起来像是被默认赋值为0了

http://img.mukewang.com/szimg/61a9ab20097485de19141080.jpg

写回答

1回答

quickzhao

2021-12-03

看看你是什么版本的VS,不同版本支持的编译器行为可能不一样。这种情况属于C++标准未定义形式,具体取决于编译器自身行为。你换一个编译器可能就不一样了,所以最好保证初始化,否则行为可能不一致。

0
2
学以致用over
但是对于超出数组边界的值是不确定的。在c语言上可以通过int arr[10] = {0}实现数组的初始化,即每一个数组元素都为0。
2022-04-04
共2条回复

重学C++ ,重构你的C++知识体系

一部大片,一段历史,构建C++知识框架的同时重塑你的编程思维

3884 学习 · 1103 问题

查看课程