在上机时,遇到了一个问题,错误代码如下:
scanf("%d",&n);
int a[n];
我的本意是希望由用户自己设置数组的大小,从而在实际问题中便于遍历(只要让i=0;i<n就可以遍历整个数组了)
这时系统会报错。
这时,可以采用malloc函数定义n个的存储空间,这n个空间是地址连续 的,完全可以当成数组来使用。
代码如下:
int *a=(int *)malloc(n*sizeof(int));
在上机时,遇到了一个问题,错误代码如下:
scanf("%d",&n);
int a[n];
我的本意是希望由用户自己设置数组的大小,从而在实际问题中便于遍历(只要让i=0;i<n就可以遍历整个数组了)
这时系统会报错。
这时,可以采用malloc函数定义n个的存储空间,这n个空间是地址连续 的,完全可以当成数组来使用。
代码如下:
int *a=(int *)malloc(n*sizeof(int));