chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

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

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

掃碼添加小助手

加入工程師交流群

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

什么是頭文件?

頭文件在C語(yǔ)言程序開(kāi)發(fā)中一般來(lái)說(shuō)是必需的,一般在C程序的開(kāi)頭就得引用頭文件。

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

為什么要用頭文件?

如果沒(méi)有頭文件,那么定義只有就在C文件中進(jìn)行,有幾個(gè)壞處:

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

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

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

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

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

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

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

表 1 圖1的要點(diǎn)解釋

一個(gè)頭文件編寫(xiě)的例子

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

頭文件的保存方法

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

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

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

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

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

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

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

是否需要幫助?

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

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

    關(guān)注

    183

    文章

    7642

    瀏覽量

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

    關(guān)注

    0

    文章

    26

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

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

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

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

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

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

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

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

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

    文讀懂WAV音頻文件格式

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

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

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

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

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

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

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

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

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

    頭文件類(lèi)型定義

    // 開(kāi)關(guān)#define ?SW_ON ? ? ? ? ? ? ??1#define ?SW_OFF ? ? ? ? ? ? ?2#define ?SW_INVERT ? ? ? ? ??3?// 右移位替代除法#define ?SHIFT
    發(fā)表于 03-24 18:17 ?0次下載

    在TouchFX Designer中運(yùn)行工程,提示頭文件找不到,為什么?

    我在TouchFX Designer 中運(yùn)行工程,提示頭文件找不到。 但是在keil中是可以編譯通過(guò)的。 請(qǐng)問(wèn)如何添加編譯的頭文件到設(shè)計(jì)器中。
    發(fā)表于 03-13 08:20

    STM32CubeMX生成代碼就會(huì)覆蓋CMakeLists.txt文件,怎么解決?

    請(qǐng)教下用STM32CubeMX生成代碼后,我自己加了個(gè)頭文件和源文件,這些自己加的文件不是要配置到CMakeLists.txt編譯么,但
    發(fā)表于 03-12 08:03

    EE-110:ELF和DWARF文件格式快速入門(mén)

    電子發(fā)燒友網(wǎng)站提供《EE-110:ELF和DWARF文件格式快速入門(mén).pdf》資料免費(fèi)下載
    發(fā)表于 01-05 09:41 ?0次下載
    EE-110:ELF和DWARF<b class='flag-5'>文件格式</b>快速入門(mén)

    stdio.h實(shí)現(xiàn)了printf函數(shù)?

    里面實(shí)現(xiàn)了 printf。 實(shí)際上并不是,這里就涉及了頭文件和庫(kù)的區(qū)別。 頭文件一般存放大家都要用的東西,比如函數(shù)的聲明,結(jié)構(gòu)體的聲明,命名新的類(lèi)型等等。 stdio.h 頭文件,里
    的頭像 發(fā)表于 12-18 10:28 ?849次閱讀

    MOV文件與其他視頻格式的兼容性

    MOV文件作為種由蘋(píng)果公司開(kāi)發(fā)的視頻文件格式(全稱(chēng)為QuickTime Movie Format),在兼容性方面表現(xiàn)出色。以下是對(duì)MOV文件與其他視頻
    的頭像 發(fā)表于 12-06 14:36 ?3959次閱讀