C++ Calloc

17 Mar 2025 | 4 分钟阅读

Calloc 用于为变量或数组动态分配内存。它将内存初始化为 。它在 C 语言中广泛使用,但也可以在 C++ 中使用。

在 C++ 语言中,我们使用像新函数 new[] 这样的关键字来为元素和元素数组分配内存。我们也可以在 C++ 中使用 calloc 函数进行内存分配。这个 calloc 函数可以在 <cstdlib> 头文件 中找到。

C++ 中 calloc 函数的语法

它具有以下语法:

传递给 calloc 函数的参数是

元素数量

  • 它表示要分配空间的元素数量。
  • 它应该是一个无符号整型值。

元素大小

  • 它表示每个块的字节大小。
  • 它应该是一个无符号整型值。

calloc 函数的返回值是

  • 它返回一个指向函数分配的内存块起始位置的指针。
  • 如果分配失败,它返回一个空指针。

示例

让我们看一个简单的程序来演示 C++ 中 calloc() 函数 的用法

输出

Calloc in C++

说明

在上面的 C++ 程序中,我们首先包含了 <cstdlib><iostream> 等头文件。在 main 函数 中,我们使用 calloc 函数进行内存分配,其中元素数量给定为 5,每个元素的大小将等于 int 的大小。calloc 的返回值将是一个指针,并赋值给 ptr。现在,我们检查 ptr 是否为空指针。如果它是空指针,则显示错误消息,我们用值填充内存块。最后,我们打印了这些元素。之后,我们使用 free() 函数释放分配的内存。

示例

当 calloc() 函数大小为零时的程序;

输出

Calloc in C++

说明

在上面的程序中,我们使用 calloc 函数 动态分配内存。在这里,我们使用一个函数来分配一个零元素数组的内存,每个元素的大小为 0 字节。输出将是一个十六进制内存地址,它表示内存空间中的内存位置。这个地址是实现特定的,并且可能在不同的系统和编译器之间有所不同。我们还使用了 free() 函数来释放分配的内存。

示例

一个说明 calloc() 函数工作原理的程序

输出

Calloc in C++

说明

这个 C++ 程序允许用户输入两个矩阵的大小和值。它使用 calloc 为这些矩阵创建内存空间,将矩阵相加,并显示结果。首先,它根据用户的大小规格为矩阵预留内存。之后,它获取用户输入以填充两个矩阵。之后,它将两个矩阵中对应位置的数字相加,生成一个新矩阵。最后,它通过释放分配的内存进行清理,以避免任何与内存相关的问题。实质上,这个程序允许您将两个矩阵相加并查看程序的结果。


下一个主题C++ 中的乘法表