当设定函数有返回值时,如果出现其他,不符合条件的返回值出现,这时又并没有让这些返回值返回,则会出现warning C4715: “juge”: 不是所有的控件路径都返回值这样的问题。
我的问题代码:
int juge(int n)
{
if ((n & (n - 1)) == 0)
{
return n;
}
}
//上面if这个地方,出了可以返回n值,还会出现其他可能,但是却并没有设置返回,这时函数会不知道该返回什么。
int main()
{
int num = 9;
int ret = juge(num);
printf("%d", ret);
return 0;
}
修改后代码:
int juge(int n)
{
if ((n & (n - 1)) == 0)
{
return n;
}
else
{
return 0;
}
}
//在if后面加上else,添加返回值
int main()
{
int num = 9;
int ret = juge(num);
printf("%d", ret);
return 0;
}