欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

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

冬至子 ? 來源:沙鷗筆記 ? 作者:沙鷗筆記 ? 2023-11-08 16:25 ? 次閱讀

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

什么是頭文件?

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

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

為什么要用頭文件?

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

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

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

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

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

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

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

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

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

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

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

頭文件的保存方法

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

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

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

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

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

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

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

是否需要幫助?

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

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

    關(guān)注

    180

    文章

    7614

    瀏覽量

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

    關(guān)注

    0

    文章

    25

    瀏覽量

    9908
收藏 人收藏

    評論

    相關(guān)推薦

    ADS114S06 Demo代碼中找不到頭文件是怎么回事?

    ADS114S06提供的Demo軟件中沒有找到相應(yīng)的頭文件,搜索也是搜索不到相應(yīng)的頭文件的,個(gè)個(gè)文件里面看也沒有找到。我準(zhǔn)備要移植到項(xiàng)目里面了,但是這些沒有
    發(fā)表于 11-28 06:41

    C語言中的頭文件能不能重復(fù)包含

    "); return 0;} 我們先來編譯看下,好像沒有任何問題。 root@Turbo:~# gcc test.c -o test root@Turbo:~# 同一個(gè)頭文件,隨便包含多少次,都不會(huì)有問題,主要是這
    的頭像 發(fā)表于 11-26 17:19 ?236次閱讀

    可重復(fù)頭文件的固定結(jié)構(gòu)

    年輕人,你可曾記得,在修習(xí)C語言的時(shí)候,見過這樣的字句:在創(chuàng)建頭文件的時(shí)候,定要加入保護(hù)宏。
    的頭像 發(fā)表于 08-29 10:23 ?410次閱讀
    可重復(fù)<b class='flag-5'>頭文件</b>的固定結(jié)構(gòu)

    編譯components文件夾內(nèi)容引入的頭文件不對怎么處理?

    最近在移植LVGL,需要自己寫RGB驅(qū)動(dòng) 我把LVGL放在components文件夾中,但編譯的時(shí)候提示缺少esp_lcd下頭文件的引用 仔細(xì)找了下發(fā)現(xiàn),編譯components內(nèi)容的時(shí)候只引入
    發(fā)表于 06-17 07:35

    引用外部文件夾中的頭文件時(shí),如何讓VSCODE不提示波浪線錯(cuò)誤?

    各位好: 我將常用的組件放在項(xiàng)目文件夾以外的某個(gè)地方,嘗試在項(xiàng)目內(nèi)引用此文件夾下的組件,失敗,在代碼中無法include相關(guān)頭文件。我在main組件中也添加了requires,任然失敗。 另外,在VSCODE中,當(dāng)我引用外部
    發(fā)表于 06-07 08:19

    為什么找不到esp_event_legacy.h頭文件?

    替代esp_event_legacy.h這個(gè)頭文件呢?謝謝 我再GITHUB上看到里面有些 system_event_t和system_event_info_t等類型的定義,目前就是找不到這些結(jié)構(gòu)體或枚舉類型的定義,但是V5.0下又沒有這個(gè)
    發(fā)表于 06-07 08:03

    components包含頭文件錯(cuò)誤是怎么回事?

    我新建了個(gè)工程,添加了個(gè)BLE組件,現(xiàn)在我在BLE組件的頭文件中包含了如下文件Code: Select all #include \"api/esp_gatt_common_api
    發(fā)表于 06-06 07:21

    FX3工程導(dǎo)入后頭文件找不到是為什么?如何添加頭文件路徑?

    在網(wǎng)上參考別人的工程項(xiàng)目,但是載入進(jìn)去之后發(fā)現(xiàn)它的頭文件都找不到,應(yīng)該如何添加頭文件路徑?
    發(fā)表于 05-27 07:53

    STM8L101F3的頭文件沒有,可以用STM8S103F的頭文件替代嗎?兩者之間有區(qū)別嗎?

    STM8L101F3的頭文件沒有,可以用STM8S103F的頭文件替代嗎?兩者之間有區(qū)別嗎?
    發(fā)表于 05-17 06:01

    stm8s103f.h頭文件在哪下載?

    我只懂用庫編程,不用庫反而不會(huì)。網(wǎng)上下載別人的程序,找不到stm8s103f.h這樣的頭文件。請問這樣的頭文件在哪可以找到?或者誰能給我這樣的頭文件,謝謝!
    發(fā)表于 05-14 06:10

    請問頭文件能不能定義變量呢?

    最近在編譯個(gè)工程的時(shí)候,突然遇到了變量重復(fù)定義的問題,根據(jù)提示打開這幾個(gè) C 文件,并沒有發(fā)現(xiàn)定義變量的地方。后來再找找,原來變量定義在了頭文件里面。
    的頭像 發(fā)表于 04-28 09:33 ?1274次閱讀

    請問為什么庫函數(shù)頭文件和寄存器頭文件不可共用?

    CLK_CKDIVR=0x01;可是這么編程后就報(bào)錯(cuò)iostm8s208mb.h頭文件缺少括號,不知道為何庫函數(shù)頭文件與寄存器頭文件起時(shí)哪構(gòu)成語法錯(cuò)誤了;請問我這個(gè)把庫函數(shù)
    發(fā)表于 04-28 06:22

    SDK5開源庫高頻注入的頭文件怎么沒有?

    ST SDK5開源庫,高頻注入的頭文件怎么沒有?只有。c文件。怎么能夠獲得?
    發(fā)表于 04-17 07:37

    如何在Cubemx中添加所有的外設(shè)頭文件?

    cubemx是個(gè)圖形生成代碼的軟件,可以很好的提高寫代碼的效率,減少時(shí)間。但同時(shí)也有個(gè)很大的問題:每次設(shè)置完后生成的代碼,只包含設(shè)置的外設(shè)的頭文件,如果想要添加其他外設(shè)的代碼,可能會(huì)因此報(bào)錯(cuò)
    發(fā)表于 04-01 07:46

    C語言中的頭文件

    #include 指令會(huì)指示 C 預(yù)處理器瀏覽指定的文件作為輸入。預(yù)處理器的輸出包含了已經(jīng)生成的輸出,被引用文件生成的輸出以及 #include 指令之后的文本輸出。
    發(fā)表于 02-23 14:06 ?526次閱讀