程序为什么出现not all control paths return a value

 首先not all control paths return a value 这句话的意思是函数并不是所有分支都有返回值。

例如:

Status LocateS(sqlist *L,int x)  //查找数据函数
{
    int i;
    for(i=0;ilength;i++)
    {
        if(i < L->length)
            return i+1;
        else
            return 0;
    }
}

warning C4715: 'LocateS' : not all control paths return a value

只需在for循环外加return 0;

修改后:
 

Status LocateS(sqlist *L,int x)  //查找数据函数
{
    int i;
    for(i=0;ilength;i++)
    {
        if(i < L->length)
            return i+1;
        else
            return 0;
    }
    return 0;
}

就不会出现警告了。

你可能感兴趣的:(程序为什么出现not all control paths return a value)