初学C语言, 请问不知道会用多少个的数组如何定义
发布网友
发布时间:2024-02-04 14:16
我来回答
共1个回答
热心网友
时间:2024-03-03 13:14
我的理解或许和你的原意有所偏差。如果你的意思是创建一个知道内容的数组,但不指定它的大小,那语法是这样:
int arr[] = {1, 2, 3, 4, 5}; // 等同于 int arr[5] = {1, 2, 3, 4, 5};如果你的意思是“可变大小”,或者在运行时才知道所需大小而编译时不知道,那要在堆上开辟内存:
int n;
scanf("&d", &n); // 运行时读入元素个数n
int *arr = (int *)malloc(sizeof (int) * n); // 申请一个大小为n的int数组
.... // 使用arr
free(arr); // 用完后记得释放内存