c语言中was not declared in this scope什么意思
#include<stdio.h>intadd(intx){intn,i,product,sum,c;printf("pleaseenteranumber:\n"...
#include <stdio.h>
int add(int x)
{
int n,i,product,sum,c;
printf("please enter a number:\n");
scanf("%d",&n);
sum=0;
product=1;
for(i=1;i<=n;i++)
{
product=product*i;
sum+=product;
printf("sum=%d",sum);
add(x);
return(x);
}
}
int main(int argc, char *argv[])
{
int result;
result=add(x);
printf("%d",result);
} 展开
int add(int x)
{
int n,i,product,sum,c;
printf("please enter a number:\n");
scanf("%d",&n);
sum=0;
product=1;
for(i=1;i<=n;i++)
{
product=product*i;
sum+=product;
printf("sum=%d",sum);
add(x);
return(x);
}
}
int main(int argc, char *argv[])
{
int result;
result=add(x);
printf("%d",result);
} 展开
1个回答
展开全部
经过分析后发现原因如下:
1.变量、函数、或者类未声明或者定义。这是最简单的情况~却是我经常犯的错误(基本也是这几个原因中可能性最大的)
另外,网上有人指出以下原因也会导致该提示错误:
2.头文件相互#include时,导致了依赖关系错误。比如,头文件形成了一个环形依赖。
如果在file b中用到了file a中的变量、函数、类,那么由于#ifndef和#define的作用,file b中的#include <file a>语句执行时无法执行file a中的#include <file b>造成错误。
3.头文件起名字的时候不小心和库中的头文件重名了,而在程序中又用了这个库的这个头文件。
这样, 就造成宏重名了,一定有一个头文件因为 #ifndef失去了效果。别的文件自然找不到这个头文件中的声明,就提示 was not decleared in this scope了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询