久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

C51中頭文件的寫(xiě)法

作者:佚名   來(lái)源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2011年09月10日   【字體:

一、頭文件位置

#include <xxx.h> 優(yōu)先在系統(tǒng)默認(rèn)路徑查找頭文件

#include“xxx.h”有現(xiàn)在項(xiàng)目路徑查找頭文件

二、#ifndef和#endif

通常形式為 

#ifndef _xxxx_h_

#define _xxxx_h_

  .........(頭文件具體內(nèi)容)

#endif

這樣的寫(xiě)法表示,如果_xxxx_h_還沒(méi)有被定義,那么頭文件內(nèi)容將被執(zhí)行,如果已經(jīng)定義過(guò)了,那么頭文件內(nèi)容就不執(zhí)行了。作用在于,如果某頭文件被不同c文件同時(shí)調(diào)用,那么里面的內(nèi)容不至于因?yàn)橹貜?fù)定義而出錯(cuò),因?yàn)椴还苷{(diào)用幾次頭文件,其內(nèi)容只有在第一次出現(xiàn)時(shí)被執(zhí)行,同時(shí)定義一個(gè)_xxxx_h_,以后再次調(diào)用時(shí),頭文件內(nèi)容被忽略。

三、函數(shù)和宏

假設(shè)有如下文件  main.c   aaa.c   aaa.h  

其中,,aaa.c里面有一個(gè)宏X,一個(gè)函數(shù)Y,且函數(shù)Y中使用了X

            aaa.h里面申明了函數(shù)Y

            main.c里包含了aaa.h文件,調(diào)用了函數(shù)Y,但沒(méi)有定義宏X

那么,編譯時(shí)不會(huì)出錯(cuò),這表示,函數(shù)Y中出現(xiàn)宏X時(shí),它會(huì)在自身所在的c文件,即aaa.c里面查找宏

變化1:如上情況不變,但是在main.c里面將整個(gè)函數(shù)Y重新寫(xiě)一遍

            編譯出錯(cuò),提示 “error C202: 'X': undefined identifier”

            說(shuō)明此時(shí)函數(shù)Y在main.c文件中找不到宏X,因此提示為未定義的符號(hào)

變化2:將aaa.c中的宏剪切到main.c,其余情況不變

            編譯出錯(cuò),同樣提示“error C202: 'X': undefined identifier”

結(jié)論: 函數(shù)中如果出現(xiàn)宏,那么該函數(shù)能且只能在其自身所在的c文件中查找該宏,如果二者不在同個(gè)c文件,必然出錯(cuò)          

關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 亚洲精品久久久久 | 日韩国产在线播放 | 亚洲欧美一区二区三区在线 | 三级黄色录像片 | 午夜一区二区三区 | 国产亚洲天堂 | 青青国产 | 国产精品二区一区二区aⅴ污介绍 | 三级a毛片| 91蜜桃婷婷狠狠久久综合9色 | 日本中文字幕在线视频 | 国产精品成人一区二区三区 | 伊人影院久久 | 亚洲人精品 | 欧美在线免费 | 8x8ⅹ国产精品一区二区 | 懂色av懂色av粉嫩av | www中文字幕 | 欧美一区二区在线视频 | 午夜理伦三级理论 | 日韩在线网址 | 懂色av一区二区夜夜嗨 | 成年人小视频 | 亚洲午夜一区 | 香蕉视频在线观看网站 | 三级视频网 | 91精品国产一区二区三区 | 精品视频免费观看 | 性色av一区 | 国产三级在线看 | 国产一级黄色大片 | 免费av毛片| 天天射天天射 | 青青伊人网 | 国产va在线 | 日韩中文字幕一区二区三区 | www.伊人网| 艳妇臀荡乳欲伦交换h漫 | 天天干天天干天天操 | 欧美黄色录像 | 欧美久久一区二区 |