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