我在VC++环境下编的C程序
#include <stdio.h>
main()
{
int a,b;
int c;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
c=add(a,b);
printf("a+b=%d\n",c);
}
int add(int a,int b)
{
a=a+b;
return(a);
}
这样写没有错误,但一旦把int c的位置换一下就出错了,如下:
#include <stdio.h>
main()
{
int a,b;
printf("a=");
int c;
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
c=add(a,b);
printf("a+b=%d\n",c);
}
int add(int a,int b)
{
a=a+b;
return(a);
}
只要int c 不在头两行定义就出错,请问这是问什么啊?
#include <stdio.h>
main()
{
int a,b;
int c;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
c=add(a,b);
printf("a+b=%d\n",c);
}
int add(int a,int b)
{
a=a+b;
return(a);
}
这样写没有错误,但一旦把int c的位置换一下就出错了,如下:
#include <stdio.h>
main()
{
int a,b;
printf("a=");
int c;
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
c=add(a,b);
printf("a+b=%d\n",c);
}
int add(int a,int b)
{
a=a+b;
return(a);
}
只要int c 不在头两行定义就出错,请问这是问什么啊?