C语言问题,这个错误怎么解决啊?

#include<stdio.h>
main()
{
int a,b,sum;
scanf("%d%d",&a,&b);
sum=add(a,b);
printf("%d",sum);}
add(x,y)
{
return(x+y);
}
出现两个错误,[Error] D:\我的文档\C-Free\Temp\未命名1.cpp:9: error: `add' was not declared in this scope
[Error] D:\我的文档\C-Free\Temp\未命名1.cpp:11: error: expected constructor, destructor, or type conversion before '(' token
还有一个警告,蛋疼的同学也一并解释一下吧谢谢了[Warning] D:\我的文档\C-Free\Temp\未命名1.cpp:14:2: warning: no newline at end of file

1.你在调用这个函数之前没有对此函数进行说明系统执行是从上到下执行,系统不认识add这玩意
改进方法,1在调用前进行声明:,2吧这个函数写在主函数main之前
2.没有写被调用函数的类型,在c语言中被调函数类型必须与主调函数类型一致
改进方法:在add前写上int,在x,y前都写上int
正确答案:

#include<stdio.h>
main()
{
int add(int x,int y);
int a,b,sum;
scanf("%d%d",&a,&b);
sum=add(a,b);
printf("%d",sum);}

int add(int x,int y)
{
return(x+y);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-19
#include<stdio.h>
main()
{
int a,b,sum;
scanf("%d%d",&a,&b);
int add(int x,int y);//先声明
sum=add(a,b);//再用
printf("%d",sum);}
int add(int x,int y)//要有返回类型,形参要有声明
{
return(x+y);
}
第2个回答  2018-07-25
把你的错误信息发出来,还有学生.xml的内容最好也发出来,这样才容易判断哪里有问题。本回答被网友采纳
第3个回答  2019-03-11
要将add这个函数的定义放在main函数的前面,或者将add函数的声明放在main函数的前面
第4个回答  2012-06-19
add函数放main函数之前追问

根本没用,就是错误的顺序调换过来了⊙﹏⊙b汗

追答

= =忘记是C不是C++了,囧

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网