C语言中动态设置数组长度并赋值
这是一个小例子,
代码如下:
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
void sort(int* q); //函数中要调用的函数
int main(){
int m;
printf("请输入数组长度:");
scanf("%d",&m); //键盘输入数组长度
int* array=(int*)malloc(sizeof(int)*m); //给数组指针开辟空间(char类型要多加一)
for (int i = 0; i < m; i++)
{
scanf("%d",array+i); //循环输入数据,数据用空格分开,因为指针本来就代表地址,
} //所以这里不用取址符&,
//sort(array); //函数调用时,只需将数组指针的首地址传进去就行
for (int i = 0; i < m; i++)
{
printf("%d ",*(array+i)); //循环输出数组中的值,指针代表的是地址,所以要用取值符 *
}
system("pause");
}