首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在C中声明运行时数组的大小?

在C语言中,要声明一个运行时数组的大小,需要使用动态内存分配。这意味着在程序运行时,您可以根据需要分配和释放内存。以下是如何在C语言中声明运行时数组大小的方法:

  1. 使用malloc函数分配内存:
代码语言:c
复制
#include<stdio.h>
#include <stdlib.h>

int main() {
    int n, i;

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

    int* arr = (int*) malloc(n * sizeof(int));

    if (arr == NULL) {
        printf("内存分配失败!");
        exit(0);
    }

    printf("请输入%d个整数:\n", n);
    for (i = 0; i < n; i++) {
        scanf("%d", &arr[i]);
    }

    printf("输入的整数为:\n");
    for (i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    free(arr);
    return 0;
}
  1. 使用calloc函数分配内存:
代码语言:c
复制
#include<stdio.h>
#include <stdlib.h>

int main() {
    int n, i;

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

    int* arr = (int*) calloc(n, sizeof(int));

    if (arr == NULL) {
        printf("内存分配失败!");
        exit(0);
    }

    printf("请输入%d个整数:\n", n);
    for (i = 0; i < n; i++) {
        scanf("%d", &arr[i]);
    }

    printf("输入的整数为:\n");
    for (i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }

    free(arr);
    return 0;
}

在这两个示例中,我们使用malloccalloc函数分配了一个整数数组。malloc函数为数组分配内存,calloc函数为数组分配内存并将其初始化为零。

请注意,在使用动态内存分配时,一定要在程序结束时使用free函数释放内存,以避免内存泄漏。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券