首页主机资讯C语言指针操作动态内存分配

C语言指针操作动态内存分配

时间2024-10-31 14:20:04发布访客分类主机资讯浏览1316
导读:在C语言中,动态内存分配是一种在程序运行时根据需要分配内存的方法 使用malloc( 函数分配内存: #include <stdio.h> #include <stdlib.h> int main( {...

在C语言中,动态内存分配是一种在程序运行时根据需要分配内存的方法

  1. 使用malloc()函数分配内存:
#include <
    stdio.h>
    
#include <
    stdlib.h>


int main() {
    
    int *ptr;
     // 声明一个整数指针
    int n = 10;
     // 要分配的内存大小

    ptr = (int *)malloc(n * sizeof(int));
 // 使用malloc()分配内存

    if (ptr == NULL) {
     // 检查内存分配是否成功
        printf("内存分配失败!\n");
    
        return 1;

    }
    

    // 使用指针操作动态分配的内存
    for (int i = 0;
     i <
     n;
 i++) {
    
        ptr[i] = i * 2;
    
        printf("ptr[%d] = %d\n", i, ptr[i]);

    }
    

    free(ptr);
     // 释放动态分配的内存
    return 0;

}
    
  1. 使用calloc()函数分配内存:
#include <
    stdio.h>
    
#include <
    stdlib.h>


int main() {
    
    int *ptr;
     // 声明一个整数指针
    int n = 10;
     // 要分配的内存大小

    ptr = (int *)calloc(n, sizeof(int));
 // 使用calloc()分配内存并初始化为0

    if (ptr == NULL) {
     // 检查内存分配是否成功
        printf("内存分配失败!\n");
    
        return 1;

    }
    

    // 使用指针操作动态分配的内存
    for (int i = 0;
     i <
     n;
 i++) {
    
        ptr[i] = i * 2;
    
        printf("ptr[%d] = %d\n", i, ptr[i]);

    }
    

    free(ptr);
     // 释放动态分配的内存
    return 0;

}
    

在这两个示例中,我们使用malloc()calloc()函数分别为整数数组分配了动态内存。注意,在使用指针操作动态分配的内存之后,我们需要使用free()函数释放内存,以避免内存泄漏。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: C语言指针操作动态内存分配
本文地址: https://pptw.com/jishu/705322.html
MongoDB范围查询能提升效率吗 C语言指针操作指针与联合体用法

游客 回复需填写必要信息