關於c語言標頭檔案51微控制器reg52h的問題

2021-03-11 07:22:13 字數 1562 閱讀 3289

1樓:匿名使用者

這些是預編譯指令。加上這個的目的是為了避免只能包含一次的標頭檔案被多次包含

2樓:匿名使用者

防止標頭檔案被重bai復包含出現

du重定義的問題。

首先同zhi一個變數被定dao義2次肯定是一個問題,專比如const int32_t l_age = 20;

const int32_t l_age = 30;

使用屬#ifndef __reg52_h__#define __reg52_h__

sfr xx = yy;

.....

.....

#endif

的格式可以避免出現類似問題。

假定 a.h中有#include

假定b.h中有#include

假定c.h中

#include

#include

假定c.c中

有#include

為#ifndef __reg52_h__

#define __reg52_h__

sfr xx = yy;

.....

.....

#endif

#ifndef __reg52_h__

#define __reg52_h__

sfr xx = yy;

.....

.....

#endif

因為之前有過_reg52_h_的巨集定義

所以下一個#ifndef __reg52_h__直接跳過,這個解決了這個重複定義的問題。

#include這個巨集定義理所包含的標頭檔案,是什麼意思?那為什麼還有別的定義微控制器c語言的標頭檔案呢?

3樓:山魚

所謂這樣的bai標頭檔案,就是duc語言跟微控制器的底層zhi關聯檔案!

dao微控制器時基於組合語言的內,暫存器,容記憶體地址都必須自己設定,所以用匯編編寫長鬚相當的繁瑣!

而c語言是一種高階語言,屬於跨平臺的!完全可以不必考慮底層的東西,例如記憶體分配問題啦。

標頭檔案中定義了一下午sfr使其對應符號變數,例如p1,p2,ti,tmod等等,這樣我們就不必考慮底層的東西,只需瞭解c語言就可以編寫出程式!

4樓:小睡黍

包含的是52微控制器的標頭檔案。會有別的標頭檔案是因為微控制器有很多種。

c語言符號的問題「reg52.h」and

5樓:思念不溼

<> 從系統環境bai變數指定的目錄

du去搜尋你的標頭檔案, 而zhi""首先從dao當前目錄搜尋你的頭版檔案,當找不到時才去

權統環境變數指定的目錄搜尋。

環境變數是什麼意思知道不? 安裝vs時它會向你的作業系統註冊一個用於指定標頭檔案目錄的變數,比如 c:\\program...\...\include

6樓:匿名使用者

尖括號用於包含系統或編譯器自帶的標頭檔案,雙引號用於包含自己定義的標頭檔案。目的是為了加快查詢標頭檔案的速度。

51微控制器資料搬運c語言程式,51微控制器訪問片內資料儲存器某單元的內容用c語言怎麼寫???

aa i bb i 51微控制器訪問片內資料儲存器某單元的內容用c語言怎麼寫?方法1 char data p 定義一個指向片內ram地址的指標 p 0x30 片內ram地址為0x30 p 0x12 向0x30內寫入立即數0x12 方法2 include char x x dbyte 0x30 將片內...

微控制器c語言中delay()函式的標頭檔案是什麼

delay函式是一個自己bai定義的du 延時函式,c語言定義延時函式主要zhi通過無意義指dao令的執回行來達到延時的目,並沒 答有一個軟體自帶標頭檔案專門有delay這個函式的。微控制器c語言中delay 的使用 voiddelay10us ucharms i 延時值 1.75 12 ms 15...

微控制器程式設計中什麼意思,51微控制器C語言中和的意思是什麼

在微控制器c語言程式設計中,是先加再賦值的意思。例如 test 5 相當於test test 5 51微控制器c語言中 和 的意思是什麼?u8 data 1 相當於 u8 data u8 data 1,u8 data u8temp 相當於 u8 data u8 data u8temp。類似的還有 這...