错误:
control reaches end of non-void function [-Wreturn-type]
这个是非常正经的分析:
用gcc编译一个程序的时候出现这样的警告:
warning: control reaches end of non-void function
它的意思是:控制到达非void函数的结尾。就是说你的一些本应带有返回值的函数到达结尾后可能并没有返回任何值。这时候,最好检查一下是否每个控制流都会有返回值。
这个是我的错误代码:
//试计算在区间 1 到 n 的所有整数中,数字x(0≤x≤9)共出现了多少次?
#include<stdio.h>
int mian()
{
long long n,x,t=0,b,c;
scanf("%lld %lld",&n,&x);
for(int i=1;i<=n;i++)
{
b=i;
while(b!=0)
{
c=b%10;
b=b/10;
if(c==x)
t++;
}
}
printf("%lld",t);
}
我一看错误分析,返回值的问题?没加return 0?那我加上?错啦!也许别的程序会有返回值的问题,我这个可不是,那么是什么呢?
我相信一定有人一眼就看出来了,那就是!main 我写成了mian!
…哭晕