找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索

keil C語言中static型變量數(shù)值更改后,電子板運(yùn)行異常

查看數(shù): 1036 | 評(píng)論數(shù): 2 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請(qǐng)稍候......
發(fā)布時(shí)間: 2023-4-8 20:06

正文摘要:

在pwm.h文件中我定義了static u16 definedMod變量,然后分別在main.c和exit.c中使用了了definedMod變量,希望能在exit.c中使用電子板的按鍵更改definedMod的值,從而改變main函數(shù)中電子板的運(yùn)作模式,但實(shí)際上在按下 ...

回復(fù)

ID:1070536 發(fā)表于 2023-4-8 23:56
Hephaestus 發(fā)表于 2023-4-8 20:33
你搞錯(cuò)了static的意思,全局static是防止其他c文件使用這個(gè)變量用的。

兩個(gè)c文件引用了pwm.h中definedMo ...

感謝!
ID:883242 發(fā)表于 2023-4-8 20:33
你搞錯(cuò)了static的意思,全局static是防止其他c文件使用這個(gè)變量用的。

兩個(gè)c文件引用了pwm.h中definedMod的定義,這兩個(gè)文件都有了definedMod這個(gè)兩個(gè)變量,但這兩個(gè)變量是兩個(gè)完全不同的變量,各用各的。

你貼出來的pwm.h的內(nèi)容實(shí)在是太糟糕了,從來沒見過這么離譜的代碼。

想要兩個(gè)c文件使用同一個(gè)變量,其中一個(gè)正常定義,另一個(gè)聲明為extern變量來使用。絕對(duì)不要加static,只要加了static就一定是錯(cuò)誤的。

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

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

快速回復(fù) 返回頂部 返回列表