c语言

c语言动态数组如何定义

小亿
128
2024-01-18 18:58:06
栏目: 编程语言

在C语言中,动态数组需要使用指针来定义,并使用malloc函数动态分配内存空间。下面是一个示例代码:

#include <stdio.h>
#include <stdlib.h>

int main() {
    int n;  // 动态数组的大小
    int *arr;  // 动态数组的指针

    printf("请输入动态数组的大小:");
    scanf("%d", &n);

    // 动态分配内存空间
    arr = (int *) malloc(n * sizeof(int));

    if (arr == NULL) {
        printf("内存分配失败!\n");
        return 1;
    }

    // 输入动态数组的元素
    for (int i = 0; i < n; i++) {
        printf("请输入第%d个元素:", i + 1);
        scanf("%d", &arr[i]);
    }

    // 输出动态数组的元素
    printf("动态数组的元素为:");
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    // 释放动态数组的内存空间
    free(arr);

    return 0;
}

以上代码首先通过scanf函数获取动态数组的大小,然后使用malloc函数分配足够的内存空间。接着使用for循环输入动态数组的元素,并使用另一个for循环输出动态数组的元素。最后使用free函数释放动态数组的内存空间。

0
看了该问题的人还看了