Keil C51 編譯錯誤 undefined identifier


一、問題

使用Keil C51編譯,總是提示編譯錯誤

CUST_TASKS.C: 'irDataPsn': undefined identifier

代碼如下,irDataPsn明明定義了,還提示沒定義,編譯不過。

void vCUST_PSN_IrTask(IR_DATA_TYPE irData, IR_DATA_TYPE irData1)
{
    UINT8 ret;
    IR_DATA_TYPE irDataPsn;
    LogSD("vCUST_PSN_IrTask ", _MGetIrType());
    if(_MGetIrType()!=IRRX_PSN_TYPE)
    {
        LogD(irData);
        return;
    }
    IR_DATA_TYPE irDataPsn;

    irDataPsn = irData >> 24 + irData1 & 0x0000FFFF << 8;

二、解決

void vCUST_PSN_IrTask(IR_DATA_TYPE irData, IR_DATA_TYPE irData1)
{
    UINT8 ret;
    IR_DATA_TYPE irDataPsn;
    LogSD("vCUST_PSN_IrTask ", _MGetIrType());
    if(_MGetIrType()!=IRRX_PSN_TYPE)
    {
        LogD(irData);
        return;
    }
   // IR_DATA_TYPE irDataPsn;

    irDataPsn = irData >> 24 + irData1 & 0x0000FFFF << 8;

如上,要把定義寫在最上面,編譯通過。應該是C51編譯器沒那么強大,所以限制多。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM