找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3858|回復: 0
收起左側(cè)

error: declaration may not appear after executable statement in block

[復制鏈接]
ID:85764 發(fā)表于 2015-7-17 16:51 | 顯示全部樓層 |閱讀模式


這個問題是在編譯STM32的程序時遇到的,這個錯誤的原因是對于變量的聲明不能放在可執(zhí)行語句后面,必須在主函數(shù)開頭聲明變量。在程序中聲明一個變量時,需要在可執(zhí)行語句之前聲明,否則會出現(xiàn)以上錯誤。

例:

vu16 KeyPortState=0;
SystemInit();   

KeyScanState_Typedef KeyScanState=KeyScanState_0; //KeyScanState_Typedef 為作者自定義的結(jié)構(gòu)體
GPIO_Configuration();     

以上編譯會出項錯誤,原因是KeyScanState_Typedef KeyScanState=KeyScanState_0; 出現(xiàn)在SystemInit();之后。

正確的函數(shù)語句段是:

vu16 KeyPortState=0;

KeyScanState_Typedef KeyScanState=KeyScanState_0;
SystemInit();
GPIO_Configuration();


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表