在 C 语言中,设置长数组有两种方法:使用 malloc() 和 free() 函数动态分配内存。使用可变长度数组 (VLA),在运行时指定数组大小。

如何在 C 语言中设置长数组
在 C 语言中,可以通过以下两种方法设置长数组:
1. 使用标准库函数 malloc() 和 free()
malloc() 函数用于动态分配内存,返回指向分配内存的指针。free() 函数用于释放已分配的内存。使用此方法设置长数组的代码如下:
立即学习“C语言免费学习笔记(深入)”;
#includeint main() { // 分配 1000 个元素的 int 类型数组 int *array = (int *) malloc(1000 * sizeof(int)); // 使用数组 array[0] = 1; array[999] = 1000; // 释放分配的内存 free(array); return 0; }
2. 使用可变长度数组 (VLA)
C99 引入了可变长度数组,允许在运行时指定数组大小。使用此方法设置长数组的代码如下:
#includeint main() { int n; printf("Enter the size of the array: "); scanf("%d", &n); // 分配 n 个元素的 int 类型数组 int array[n]; // 使用数组 for (int i = 0; i < n; i++) { array[i] = i + 1; } // 输出数组元素 printf("Array elements: "); for (int i = 0; i < n; i++) { printf("%d ", array[i]); } printf("\n"); return 0; }
注意事项:
- 使用
malloc()分配的内存必须使用free()释放,以防止内存泄漏。 - VLA 仅在函数内部有效,不能作为全局变量或传递给其他函数。











