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関数で割り当てたメモリ領域を解放します。

bannerAds