程序出现missing return statement at end of non-void function "KEY_Scan"少返回值警告,求怎么改谢谢

发布网友 发布时间:2022-04-24 06:34

我来回答

2个回答

热心网友 时间:2023-10-08 21:20

你只写了第一层if条件不满足时的情况,第二层if条件不满足的你没写。
修改成下面代码试试看!

u8 KEY_Scan()
{

if(KEY0==0)
{
delay_ms(22);
if(KEY0==0)
{
while(KEY0==0);
delay_ms(22);
while(KEY0==0);
return KEY_Right;
}
else return 0;


if(KEY1==0)
{
delay_ms(22);
if(KEY1==0)
{
while(KEY1==0);
delay_ms(22);
while(KEY1==0);
return KEY_Down;
}
else return 0;


if(KEY2==0)
{
delay_ms(22);
if(KEY2==0)
{
while(KEY2==0);
delay_ms(22);
while(KEY2==0);
return KEY_Left;
}
else return 0;


if(UP_KEY==1)
{
delay_ms(22);
if(UP_KEY==1)
{
while(UP_KEY==1);
delay_ms(22);
while(UP_KEY==1);
return KEY_Up;
}
else return 0;

else return 0;

}

热心网友 时间:2023-10-08 21:21

“{”: 缺少函数标题(是否是老式的形式表?)

在全局范围内出现左大括号,但没有相应的函数头。

此错误可能由旧式 C 语言格式列表引起。

下面的示例生成 C2447:
// C2447.cpp
int c;
{} // C2447

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com