在c中的malloc之后的默认值是什么?

编程入门 行业动态 更新时间:2024-10-22 21:43:15
本文介绍了在c中的malloc之后的默认值是什么?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有以下代码:

int *p; p = (int*)malloc(sizeof(int) * 10);

但是这个有10个元素的int数组的默认值是什么?都是0吗?

but what is the default value of this int array with 10 elements? are all of them 0?

推荐答案

实际内容不确定.

C11,第7.22.3.4节malloc函数

malloc函数为对象的大小分配空间,该对象的大小由size和 值不确定的. C11, § 7.22.3.4 The malloc function

The malloc function allocates space for an object whose size is specified by size and whose value is indeterminate.

但是,操作系统通常将此内存空间初始化为0(请参阅此答案).您可以使用calloc来确保每个位都设置为0.

However, the operating system often initializes this memory space to 0 (see this answer). You can use rather calloc to be sure that every bits are setted to 0.

更多推荐

在c中的malloc之后的默认值是什么?

本文发布于:2023-11-07 06:25:38,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1565766.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:默认值   malloc

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!