malloc関数のC言語での使い方
malloc関数は、C言語で動的にメモリを確保するために使用される関数です。そのプロトタイプは次のとおりです。
void* malloc(size_t size);
malloc 関数は 1 つの引数 size を受け取り、malloc 関数が割り当てたメモリのサイズ(バイト単位)を示し、割り当てたメモリへのポインタを返します。割り当てが失敗した場合は NULL を返します。
以下はmalloc関数の使用例です。
#include <stdio.h>
#include <stdlib.h>
int main() {
int* ptr;
int num = 5;
// 分配内存空间
ptr = (int*)malloc(num * sizeof(int));
if (ptr == NULL) {
printf("内存分配失败\n");
return 1;
}
// 使用分配的内存
for (int i = 0; i < num; i++) {
ptr[i] = i + 1;
}
// 输出分配的内存
for (int i = 0; i < num; i++) {
printf("%d ", ptr[i]);
}
printf("\n");
// 释放内存空间
free(ptr);
return 0;
}
そのサンプルでは、まずポインタ変数のptrと整数の変数numを定義し、malloc関数でnum個のint型のメモリ領域を割り当てます。次に、forループを使用して1からnumまでの数字を割り当てられたメモリに格納し、forループで格納された内容を出力します。最後に、free関数で割り当てたメモリ領域を解放します。