C语言数组长度不定时的处理方法
突然想到一个程序不知道要输入多少数据时应该怎么处理,此时想到了sizeof。写了如下代码,结果如下,发现并没什么用。如果可以修改源代码,完全可以在代码中修改数组长度。
#include<stdio.h>
int main()
{
int sort(int a[],int n);//函数声明
int r[]={
7,2,8,5,9,3};
int n=sizeof(r)/4;
printf("有%d个数\n",n);
int min=sort(r,n);
printf("最小值为%d",min);
}
int sort(int a[],int n)
{
//注意:此处为a[0]的地址有8位
printf("地址为%d位\n",sizeof(a));
int min=a[0];
for(int i=0;i<n;i++)
{
if(min>a[i])
min=a[i];
}
return min;
}
然后我做了下修改,使其