C中数组的默认值是多少?

新手上路,请多包涵

如果我要使用 int* array = new int[10]; 创建一个数组并用值填充数组的一部分,我如何检查数组的填充量?我想循环检查每个值是否是默认值,但我不确定每个数组元素的默认值是什么。是 null 0 还是垃圾值?

原文由 mysticalstick 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 608
2 个回答

这是在创建数组时如何在 C++ 中设置默认值。

 int array[100] = {0};

现在每个元素都设置为 0 。如果不这样做,每个元素都会产生垃圾,并且如果使用它将是未定义的行为。

不是所有的语言都是这样的。 Java 在声明数据结构时具有默认值,但 C++ 没有。

原文由 Gary Holiday 发布,翻译遵循 CC BY-SA 3.0 许可协议

没有默认值,所以它是垃圾。

原文由 SurvivalMachine 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题