c语言中动态数组怎么创建

avatar
作者
筋斗云
阅读量:2

在C语言中,可以通过malloc函数或者calloc函数来创建动态数组。

  1. 使用malloc函数创建动态数组:
#include <stdio.h> #include <stdlib.h>  int main() {     int *arr;     int size;      printf("Enter the size of the array: ");     scanf("%d", &size);      arr = (int *)malloc(size * sizeof(int));          if (arr == NULL) {         printf("Memory allocation failed!\n");         return 0;     }      printf("Enter the elements of the array:\n");     for (int i = 0; i < size; i++) {         scanf("%d", &arr[i]);     }      printf("The elements of the array are:\n");     for (int i = 0; i < size; i++) {         printf("%d ", arr[i]);     }     printf("\n");      free(arr);      return 0; } 
  1. 使用calloc函数创建动态数组:
#include <stdio.h> #include <stdlib.h>  int main() {     int *arr;     int size;      printf("Enter the size of the array: ");     scanf("%d", &size);      arr = (int *)calloc(size, sizeof(int));          if (arr == NULL) {         printf("Memory allocation failed!\n");         return 0;     }      printf("Enter the elements of the array:\n");     for (int i = 0; i < size; i++) {         scanf("%d", &arr[i]);     }      printf("The elements of the array are:\n");     for (int i = 0; i < size; i++) {         printf("%d ", arr[i]);     }     printf("\n");      free(arr);      return 0; } 

无论是使用malloc还是calloc函数创建动态数组,都需要注意释放内存的操作,可以使用free函数释放动态数组占用的内存空间。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!