我的代码有问题。我在上面写了一个布尔函数int main():
bool currency_(const char c)
{
while (c==' ')
{
if (c==('p', 't', 'e', 'd'))
{
return true;
}
else
{
return false;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我希望程序能够正常工作,但是在编译时却显示“控制到达无效功能的结尾”。
您的功能没有意义。
如果c是空格字符,则您的if语句(您是否正确编写了该语句,是否正确)将始终被评估为false。
如果c不是空格字符,则函数将以未定义的返回值退出。
而且您while是无用的,因为该函数永远不会修改c。
您可能想写这样的东西:
bool currency_(const char c)
{
if (c =='p' || c == 't' || c == 'e' || c == 'd')
{
return true;
}
else
{
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
或者简单地
bool currency_(const char c)
{
return (c =='p' || c == 't' || c == 'e' || c == 'd');
}
Run Code Online (Sandbox Code Playgroud)