魔兽世界什么t最好:关于C语言多变量全局变量的消除

来源:百度文库 编辑:高校问答 时间:2024/05/02 09:25:58
viod fir()
{
int i;
float j;
scanf("%d",&i);
scanf("%f",&j);
}

viod sec()
{
int i;
printf("i=%d,j=%f\n",i,j);
}

mian()
{
fir();
sec();
}

这个程序是错误的,只是想表达我的意思。
FIR()用来读取;
SEC用来写出;
怎么把FIR的I,J的值传到SEC去;
不是使用全局变量

void f1(int *p);
void f2()
main()
{
int i;
int *p;
p=new int[10];
f1(p);
f2(p);

}
void f1(int *p)
{
for(i=0;i<10;i++)
{
scanf("%d",p);
p++;
}
}
void f2(int *p)
{

}

这样可以一次性传递多个参数。

viod fir(int *i,float *j)
{
scanf("%d",i);
scanf("%f",j);
}

viod sec(int i,float j)
{
printf("i=%d,j=%f\n",i,j);
}

mian()
{
int i=0;float j=0.0;
fir(&i,&j);
sec(i,j);
}

那肯定要用指针