看很多微控制器的標頭檔案裡寫著extern c ,這是什麼意思?另外,51微控制器可不可以用C編寫程式

時間 2022-03-16 17:50:19

1樓:喬永芬區琬

我們的c語言有個進化版,叫c++,這個想必樓主知道,keil

mdk是支援c++程式設計的,也就是說,你可以用c語言或者c++寫你的程式,都可以。

但是,有一個問題,就是標頭檔案的問題,c語言寫的標頭檔案c++是不認識的,需要轉換一下,這個轉換的方法就是加上extern

"c"#ifdef

__cplusplus

extern

"c"{

}這句話意思是,如果你定義了「__cplusplus」這個巨集,說明你的意圖是想在c++檔案中呼叫這個標頭檔案,我前頭說了,c語言的標頭檔案c++是不認識的,怎麼辦呢,就加上

extern

"c"{。。。。。}

告訴c++檔案,大括號裡面的東西是用c語言寫的,然後c++檔案就認識了,就能呼叫這個標頭檔案裡的東西了,

extern

"c"{

}的存在,使得c語言和c++能更好的結合的一塊。

另外,樓主的問題是錯誤的,不管什麼微控制器,他們只識別二進位制語言,至於你的高階語言用什麼編寫,那要看你的編譯或者編輯環境支援與否,比如arm,可以扶持c,c++,而c51編譯器並不支援c++,所以c51編譯器只能把c語言翻譯成最終的二進位制語言,不能翻譯c++

2樓:居綠柳喻寅

extern

"c"是用來相容c++的

51微控制器不可以用c++編寫程式

3樓:薊素枝六鶯

reg51內部規定的sfr暫存器的地址與intel

mcs-8051微控制器的相同,即任何一種型號的51微控制器都有的基本sfr,reg52則是對reg51進行擴充,增加了t2和dptr1。因此可以認為reg51是reg52的子集,此外對於不同廠家生產的51微控制器,如at89s52、w78e58等都有自己相應的sfr定義標頭檔案。

微控制器中斷概念,什麼是微控制器的中斷

微控制器的中斷概念是指微控制器在執行程式時,遇到事先設定的優先等級高於當前正在執行程式的控制訊號時,暫時停止當前程式的執行,轉而先執行優先等級高的程式,等待所有優先等級較高的程式都執行完後,再返回繼續原來暫停執行的程式的操作,這樣的程式操作就稱為執行中斷操作。為了保證中斷執行後能夠繼續執行原來的程式...

學過微控制器的高手進,微控制器高手請進

現在大多數程式設計都介於c,彙編只是在微控制器上。我自認為學習彙編比較簡單,我建議你自學彙編,你把彙編學會再學c,相對來說比較簡單!儘量不要兩個同時學,這兩個程式的彙編,一般不會造成混亂,但是對於一個初學者,先學一個,再學另一個比較簡單!如果你想在微控制器上有所發展,你要做好一個長期思想準備,不是很...

微控制器 psw是什麼,微控制器的psw是什麼?

psw即程式狀態字 有些教材也叫程式狀態暫存器 program status word 程式狀態暫存器psw是計算機系統的核心部件 控制器的一部分,psw用來存放兩類資訊 一類是體現當前指令執行結果的各種狀態資訊,稱為狀態標誌,如有無進位 cf位 有無溢位 of位 結果正負 sf位 結果是否為零 z...