野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12055|回复: 4

函数设置了参数,但编译提示未使用,影响正常的使用了

[复制链接]
发表于 2016-9-3 10:48:58 | 显示全部楼层 |阅读模式
uint8_t FpReceive(u16 pCommand,u16 pAck,u16 pResp,u16 pTempN)
{
    uint16_t wChkSum = 0;
    uint16_t wLen = 0;
    uint8_t i;
    if(fpRecStatus)                                                                //接收完成标志位
    {
      
        for(wChkSum = 0,i = 0;i < PacketLen - 2;i ++)
          wChkSum += fpRecBuf;
        if(wChkSum==(((fpRecBuf[23]<<8)&0xff00)+ fpRecBuf[22]))                 //校验数据
        {
            pCommand=((fpRecBuf[3]<<8)&0xff00)+fpRecBuf[2];                     //功能
            wLen=((fpRecBuf[5]<<8)&0xff00)+fpRecBuf[4];
            pAck=((fpRecBuf[7]<<8)&0xff00)+fpRecBuf[6];                         //处理结果
            pResp=((fpRecBuf[9]<<8)&0xff00)+fpRecBuf[8];                        //指令执行参数1(FpPacket.h中宏定义)
            pTempN=((fpRecBuf[11]<<8)&0xff00)+fpRecBuf[10];                     //返回执行参数2(模板号码)
            for(i=0;i<acketLen;i++)
            fpRecBuf=0;
            fpRecStatus =0;        
            return 1;
        }
    }
    return 0;
}

pCommand,wLen,pAck这几个参数已经使用了,在编译时提示警告,在其他地方调用这个函数,不能正确传递数据,是我定义错了还是什么问题?

QQ图片20160903104350.png
QQ图片20160903104335.png
回复

使用道具 举报

 楼主| 发表于 2016-9-6 17:21:53 | 显示全部楼层
是因为变量不能放在等号左边,如果要用在左边,应该是指针形式才可以,在群里问的答案
回复 支持 反对

使用道具 举报

发表于 2016-9-3 11:09:07 | 显示全部楼层
你这些是逻辑问题,你要自己看
我们也不知道你写程序的逻辑,也不知道你这段程序想实现什么功能,只能帮顶。
回复 支持 反对

使用道具 举报

发表于 2016-9-3 17:03:22 | 显示全部楼层
警告是不影响程序的正常使用的呀!!!应该是你代码自身的问题。。。先好好根据你的逻辑整理下
回复 支持 反对

使用道具 举报

发表于 2016-9-3 17:53:16 | 显示全部楼层
估计是没有声明
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-7-2 04:31 , Processed in 0.037189 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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