在C语言中,可以使用指针和malloc函数来实现动态数组。
动态数组可以根据需要在运行时分配内存空间,并根据需求调整大小。
以下是一个简单的示例,演示如何实现动态数组:
#include#include int main() { int *arr; // 定义一个指向整型的指针 int size; printf("请输入数组的大小: "); scanf("%d", &size); // 分配内存空间 arr = (int*)malloc(size * sizeof(int)); // 检查内存分配是否成功 if (arr == NULL) { printf("内存分配失败\n"); return 1; } // 输入数组元素 printf("请输入%d个整数: ", size); for (int i = 0; i < size; i++) { scanf("%d", &arr[i]); } // 输出数组元素 printf("数组元素为: "); for (int i = 0; i < size; i++) { printf("%d ", arr[i]); } printf("\n"); // 释放内存 free(arr); return 0; }
在上述示例中,首先通过malloc函数分配了size个整型元素的内存空间。然后,用户输入了数组元素,并将其存储在动态数组中。最后,使用free函数释放了该内存空间。
请注意,在使用完动态数组后,一定要记得释放分配的内存空间,以免造成内存泄漏。