找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1563|回复: 6
收起左侧

C语言return 错误,请大家帮忙看看是什么原因?

[复制链接]
ID:97678 发表于 2023-3-16 09:40 | 显示全部楼层 |阅读模式
这段程序编译后,出现这个错误提示: warning C294: unreachable code
一下这个屏蔽掉一个,就可以编译。是什么原因?

            return wendu;                        //返回整型常数便于显示小数位数字                           
            return wendu_2;                        //返回带两位小数的实际温度      


    uint Re_Convert() //热电偶数据读取,返回温度
    {
            long int a=0x7ff8;
            long int wendu=0,wendu_1;
            float wendu_2;
        uint i;
            CS=1;
            SCK=0;
            delay(200);
            _nop_();
            _nop_();
            CS=0;
            for(i=1;i<=16;i++)
              {        wendu=wendu<<1;
                    _nop_();
                     SCK=1;
                    if(SO==1){wendu=wendu|0x01;}
                       else wendu=wendu|0x00;
                    _nop_();
                    _nop_();
                    SCK=0;
                    _nop_();
                    _nop_();
              }
            wendu_1=wendu&a;
            wendu_1=wendu_1>>3;
            wendu_2=wendu_1*0.25;
            wendu=wendu_2*100;        //放大100倍转成整型常数
            return wendu;                        //返回整型常数便于显示小数位数字                           
            return wendu_2;                        //返回带两位小数的实际温度                           
    }


回复

使用道具 举报

ID:807182 发表于 2023-3-16 09:59 | 显示全部楼层
写两个return,那你执行函数想让它返回哪个值呢
回复

使用道具 举报

ID:962286 发表于 2023-3-16 10:05 | 显示全部楼层
数据不能分2次return,可以返回结构体来实现一次性返回几个数;当然也可以用指针的方式来实现。
回复

使用道具 举报

ID:291668 发表于 2023-3-16 10:54 | 显示全部楼层
加个判读条件再return。
回复

使用道具 举报

ID:883242 发表于 2023-3-16 12:05 | 显示全部楼层
warning无需屏蔽一样可以正常编译。
回复

使用道具 举报

ID:97678 发表于 2023-3-16 12:17 | 显示全部楼层
谢谢! 我试试看!
回复

使用道具 举报

ID:69038 发表于 2023-3-16 15:44 | 显示全部楼层
走到第一个return就返回,第2个明显无用了。你应该把数据打包好,返回指针、数组、结构体==。要不就使用静态变量
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表