伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是頭文件?頭文件編寫的一般格式要求是怎樣?

冬至子 ? 來源:沙鷗筆記 ? 作者:沙鷗筆記 ? 2023-11-08 16:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文介紹頭文件的定義、編寫、保存及引用等方面的內(nèi)容,包括了一般的格式要求、例程等。

什么是頭文件?

頭文件在C語言程序開發(fā)中一般來說是必需的,一般在C程序的開頭就得引用頭文件。

頭文件作為一種包含功能函數(shù)、數(shù)據(jù)接口聲明的載體文件,主要用于保存程序的聲明,而定義文件用于保存程序的實現(xiàn)。

為什么要用頭文件?

如果沒有頭文件,那么定義只有就在C文件中進行,有幾個壞處:

->不便于閱讀。定義和功能代碼放在一起,可讀性變差;

->重復(fù)勞動,增加程序量。在各個C文件中,只要用到了就得重新定義一下,重復(fù)的代碼會變多等。

如需項目開發(fā)定制,可Q-Q: 2531二六3726。

頭文件編寫的一般格式要求是怎樣?

很多東西都有格式的,按照格式來做一般不會出錯。圖 1為頭文件定義的一般結(jié)構(gòu)。

開頭的#ifndef和最后的#endif需要成對出現(xiàn),它的含義為假如沒有定義某文件的話,那么執(zhí)行某些操作。在#ifndef和#endif之間可以編寫頭文件定義的代碼,如載入其他頭文件、引腳定義、子程序預(yù)定義等的。

下表給出了圖 1中部分代碼的解釋。

表 1 圖1的要點解釋

一個頭文件編寫的例子

有個例子,會有更加生動的理解。圖 2為一個頭文件定義的例子,頭文件的名字位relaycontrol.h,這個頭文件里包含了載入其他頭文件、引腳定義、符號變量定義、子程序預(yù)定義等內(nèi)容。

頭文件的保存方法

保存頭文件一般有2種方法:

(1)、在keil中保存H文件:如例,假如在keil中新建了H文件,編寫完頭文件代碼后,點擊保存按鈕,命名后保存在電腦硬盤(與引用它的C文件在同一個文件夾)里即可,本例中保存的頭文件為relaycontrol.h。

(2)、在電腦里新建一個TXT文件,再改擴展名為.h:在電腦硬盤(與引用它的C文件在同一個文件夾)中新建一個txt文件,寫入頭文件代碼,保存,并改擴展名為.h。本例中將這個txt文件名及擴展名改為relaycontrol.h。

怎么在C程序中引用頭文件?

在C程序中,頭文件需要先引用后才能使用,一般引用頭文件放在程序的開頭位置。

在C文件中引用頭文件的方法很簡單,就是在程序中用“#include”指令把相應(yīng)的頭文件載入就行了。

引用后,在這個C文件中就能使用頭文件里已經(jīng)定義的內(nèi)容,如定義的引腳、符號變量和子程序等。

是否需要幫助?

提供單片機、PLC、電路板、控制器/箱、儀器儀表、機電設(shè)備或系統(tǒng)、自動化、工控、傳感、數(shù)據(jù)采集、自控系統(tǒng)、控制系統(tǒng),軟件、APP開發(fā)設(shè)計定制訂做。如有項目需要,可Q:2531二六3726。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    183

    文章

    7645

    瀏覽量

    146030
  • 頭文件
    +關(guān)注

    關(guān)注

    0

    文章

    26

    瀏覽量

    10340
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    技術(shù)資訊 I 文詳解 STEP 文件

    本文要點STEP文件種廣泛使用的中性文件格式,用于交換3D計算機輔助設(shè)計(CAD)數(shù)據(jù)。STEP文件分為多種類型,適用于特定行業(yè)領(lǐng)域及產(chǎn)品開發(fā)的全流程。雖然STEP
    的頭像 發(fā)表于 02-06 16:08 ?1159次閱讀
    技術(shù)資訊 I <b class='flag-5'>一</b>文詳解 STEP <b class='flag-5'>文件</b>

    VSCode + ESP-IDF環(huán)境下給ESP32-S3項目添加頭文件

    VSCode + ESP-IDF環(huán)境下給ESP32-S3項目添加頭文件
    的頭像 發(fā)表于 11-28 07:27 ?2928次閱讀

    RISC-V GCC編譯,如何添加math.h頭文件?

    在使用些數(shù)學(xué)函數(shù)(例如exp)時,需要添加math.h頭文件 risc-v embedded gcc在添加math.h函數(shù)時,會到riscv-none-embed/lib里尋找鏈接庫文件庫libm.a,但編譯顯示失?。簎nde
    發(fā)表于 11-10 07:50

    基于蜂鳥E203添加完外設(shè)后軟件頭文件添加過程

    對應(yīng)的頭文件,才可以在軟件代碼里調(diào)用。platform.h文件定義了SoC平臺相關(guān)的宏定義。在里面添加下圖所示代碼。 AES_CTRL_ADDR _AC(0x10041000,UL)表示AES模塊基地址為
    發(fā)表于 10-30 06:48

    頭文件保護失效,提示變量重復(fù)包含,是什么原因?qū)е碌模?/a>

    我自定了頭文件,而且使用了頭文件保護機制。但是在兩個源文件包含相同的頭文件時,依然提示某些變量重復(fù)包含。想不出來問題在哪里。 這個
    發(fā)表于 10-09 06:19

    RT-thread源碼scons --dist --target=vsc;STM32L475-pandora沒有STM32L4xx.h頭文件是怎么回事?

    原因是這個文件夾沒有stm32L4xx.h的頭文件
    發(fā)表于 09-28 13:00

    無法找到已經(jīng)存在的頭文件,為什么?

    fatal error: stm32f0xx_hal_conf.h: No such file or directory compilation terminated. 這個.H文件在MX里已經(jīng)自動生成了,為什么還會顯示找不到了? 如何解決?哪里有文檔可查?
    發(fā)表于 09-28 06:25

    RTT如何添加文件夾并加入編譯?

    想把個新的工程文件夾(包含若干個源文件頭文件)放入同個工程內(nèi)編譯。 試了下把在文件系統(tǒng)添加
    發(fā)表于 09-15 07:50

    文讀懂WAV音頻文件格式

    本文主要為后面ESP32 I2S音頻系列文章做鋪墊,所以本篇將介紹WAV音頻文件格式,并通過C代碼生成段1S的正弦波WAV音頻寫入到SD卡里面。
    的頭像 發(fā)表于 08-25 17:49 ?5416次閱讀
    <b class='flag-5'>一</b>文讀懂WAV音頻<b class='flag-5'>文件格式</b>

    RTOS SDK的canmv_net_mgmt網(wǎng)絡(luò)模塊如何編寫連接代碼?

    從最近源碼更新了次后,以前的可執(zhí)行文件使用出錯了,請問有沒有大哥知道新版源碼怎么編寫代碼進行操作網(wǎng)絡(luò)模塊canmv_net_mgmt。 或者是操作canmv_net_mgmt的
    發(fā)表于 07-25 08:14

    STM32CUBEIDE使用UCOS的時候,頭文件路徑已經(jīng)添加了,依舊提示未找到路徑怎么解決?

    在使用UCOS的時候,頭文件路徑已經(jīng)添加了,他依舊提示未找到路徑怎么解決
    發(fā)表于 07-25 06:28

    NCS怎么添加.c.h文件到工程

    Directories添加頭文件路徑 對工程或者文件夾鼠標(biāo)右擊就可以添加文件或者.c文件管理文件等操作。 可以看出,Segger添加源
    的頭像 發(fā)表于 06-27 14:48 ?1134次閱讀
    NCS怎么添加.c.h<b class='flag-5'>文件</b>到工程

    服務(wù)器數(shù)據(jù)恢復(fù)—ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)的數(shù)據(jù)恢復(fù)案例

    服務(wù)器存儲數(shù)據(jù)恢復(fù)環(huán)境&故障: 人為誤操作將Ext4文件系統(tǒng)誤裝入臺服務(wù)器存儲上的Ocfs2文件系統(tǒng)數(shù)據(jù)卷上,導(dǎo)致原Ocfs2文件系統(tǒng)被格式
    的頭像 發(fā)表于 06-10 12:03 ?847次閱讀
    服務(wù)器數(shù)據(jù)恢復(fù)—ocfs2<b class='flag-5'>文件</b>系統(tǒng)被<b class='flag-5'>格式</b>化為Ext4<b class='flag-5'>文件</b>系統(tǒng)的數(shù)據(jù)恢復(fù)案例

    cypress3014在頭文件修改編譯后,時間不變,這樣頭文件的程序有被執(zhí)行嗎?

    你好,請問我在頭文件修改編譯后,時間不變,這樣頭文件的程序有被執(zhí)行嗎,怎么解決這個問題
    發(fā)表于 05-14 06:50

    使用OUT_REG3_VALID觸發(fā)條件時,GPIF II Designer生成無效的頭文件怎么解決?

    使用 OUT_REG3_VALID 觸發(fā)條件時,GPIF II Designer 生成無效的頭文件
    發(fā)表于 04-30 06:47