首页 > 代码库 > warning: control reaches end of non-void function [-Wreturn-type]

warning: control reaches end of non-void function [-Wreturn-type]

今天写数据结构代码的时候,调试一段程序,结果发现编译器提示了一些错误信息:
warning: control reaches end of non-void function [-Wreturn-type]
经过百度查询,得知原因是自己定义了一个有返回值的函数,而函数结尾却没有返回值;
或者是主函数的结尾没有添加语句:return 0;
int main(void)
{
   //自己的代码
   return 0;//要添加这个语句
}
我看了看自己写的函数,非void的函数都有写返回值的,并且主函数也有添加返回0,为什么还会有这样的错误呢?

经过仔细思考后才明白,我的那个函数是找到了才有返回值的,如果没找到就没有返回值,
怪不得会提示这个错误信息,于是我在函数的最后添加了语句:return -1,编译一下,没有错误信息。

warning: control reaches end of non-void function [-Wreturn-type]