青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

<2009年2月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
1234567

統計

  • 隨筆 - 24
  • 文章 - 0
  • 評論 - 17
  • 引用 - 0

常用鏈接

留言簿(4)

隨筆分類

隨筆檔案

相冊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

有關include guard的一個好帖子(收藏)
終于弄清楚了原來說的同一個頭文件不能被兩次或兩次以上包含是針對同一個源文件而言的。借用80后的流行語,真是漢哪!

原貼地址:http://www.keil.com/forum/docs/thread10237.asp

作者 Per Westermark

The

#ifndef xx
#define xx
...
#endif

method is to make sure that a header file isn't included more than once from the same c file.

You can not - and normally don't want to - stop multiple c files from including the same header file.

A header file is included because:
1) You have specifically added a line #include "xx" or #include <xx> in the source file. Don't do that unless you want the file to be included :)
2) You are including one header file, that it it's turn (one or more steps away) includes another header file. But a header file should only contain a recursive #include if it really needs that other file for some declarations. Hence, you need to include it.

What does this mean?

If the header file must be seen by multiple source files, you can't use it to allocate global variables, since the linker would then complain about multiple sets of global variables with the same name. This can be solved with the following:

//globals.h
#ifndef _GLOBALS_H
#define _GLOBALS_H
#if defined MAIN
#define EXTERN
#else
#define EXTERN extern
#endif
...
EXTERN int my_global_variable;
#endif // _GLOBALS_H

// main.c
#define MAIN
#include "globals.h"
...
// misc.c
#include "globals.h"
...

In this case, only the inclusion in main.c will result in an "allocation" of global variables, because the #define EXTERN will be empty. All other source files that includes "globals.h" will just see the type information for the global variables.

posted on 2009-02-19 09:04 小蔥蘸醬 閱讀(1011) 評論(2)  編輯 收藏 引用

評論

# re: 有關include guard的一個好帖子(收藏) 2009-02-19 21:19 陳梓瀚(vczh)

EXTERN的時候,如果剛好main沒有引用它,那就鏈接錯誤了- -#
  回復  更多評論    

# re: 有關include guard的一個好帖子(收藏)[未登錄] 2009-02-20 16:15 小蔥蘸醬

@陳梓瀚(vczh)
歡迎評論!
只要在include "globals.h"前定義了MAIN,就不會聯接錯誤,跟引用有什么關系呢?
  回復  更多評論    

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            99亚洲伊人久久精品影院红桃| 亚洲激情中文1区| 亚洲一区二区精品在线| 欧美性一区二区| 亚洲免费网站| 欧美在线一区二区| 激情综合色综合久久综合| 美女脱光内衣内裤视频久久影院 | 日韩视频免费大全中文字幕| 欧美日韩成人一区二区三区| 中文国产成人精品| 亚洲性感美女99在线| 国产亚洲视频在线观看| 欧美成人午夜| 欧美小视频在线| 久久精品一区二区三区不卡| 你懂的国产精品永久在线| 中文国产一区| 久久久久九九视频| 一区二区免费在线播放| 欧美一区二区视频在线观看2020 | 国产麻豆91精品| 免费短视频成人日韩| 欧美日韩国产美| 久久久久一区二区三区四区| 欧美大成色www永久网站婷| 亚洲男人av电影| 久久久亚洲国产天美传媒修理工| 亚洲最快最全在线视频| 欧美在线免费视频| 亚洲一区二区三区精品在线观看| 久久精品综合网| 午夜精品福利在线观看| 蜜臀va亚洲va欧美va天堂| 午夜宅男欧美| 欧美日本在线播放| 麻豆精品91| 国产精品日韩一区| 亚洲久久在线| 亚洲国产aⅴ天堂久久| 午夜精品福利视频| 亚洲一区二区在线播放| 欧美高清在线| 欧美丰满高潮xxxx喷水动漫| 国产视频在线观看一区二区三区| 亚洲区国产区| 亚洲人成毛片在线播放| 久久久www成人免费毛片麻豆 | 国产一区二区三区四区hd| 欧美高潮视频| 国内精品亚洲| 欧美影院成人| 欧美在线观看一二区| 欧美系列精品| 一区二区三区四区五区精品视频| 亚洲国产日韩综合一区| 久久青青草原一区二区| 久久久久国色av免费看影院| 国产精品国产三级国产a| 99精品视频免费| 日韩一级免费观看| 欧美精品一区二区三区蜜臀| 欧美成人免费va影院高清| 韩日成人av| 久久久精品免费视频| 久久天天躁夜夜躁狠狠躁2022 | 欧美日韩午夜激情| 亚洲激情在线观看视频免费| 亚洲理伦电影| 欧美日韩视频在线一区二区| 日韩一级黄色大片| 亚洲女女做受ⅹxx高潮| 国产精品网红福利| 久久av在线| 免费成人你懂的| 亚洲美女黄色| 欧美午夜一区二区三区免费大片| 日韩视频在线你懂得| 亚洲免费在线看| 国产一区二区欧美日韩| 久久精品在线观看| 亚洲大胆av| 亚洲一区二区黄色| 国产日韩欧美综合精品| 久久精品一区二区| 亚洲欧洲另类| 午夜久久99| 在线免费观看日本一区| 欧美日韩精品免费观看视频| 亚洲在线播放| 欧美福利视频在线| 亚洲字幕在线观看| 伊人成人在线视频| 欧美日韩精品免费观看视一区二区| 亚洲综合精品一区二区| 男人的天堂亚洲在线| 一区二区激情视频| 国产日韩在线播放| 欧美第十八页| 香港久久久电影| 亚洲日本va午夜在线影院| 午夜精品福利电影| 亚洲国产91色在线| 国产精品色网| 欧美精品一区二区三区视频| 亚欧成人在线| 一本色道久久综合狠狠躁的推荐| 久久综合九色综合网站| 亚洲五月婷婷| 最新国产精品拍自在线播放| 国产精品久久综合| 欧美高清在线视频观看不卡| 欧美一区91| 在线亚洲免费视频| 91久久久久| 欧美超级免费视 在线| 欧美一站二站| 亚洲小视频在线| 亚洲精品日本| 亚洲福利视频一区二区| 国产日韩欧美麻豆| 国产精品福利在线观看网址| 免费在线观看精品| 久久精品国产亚洲5555| 午夜欧美不卡精品aaaaa| 一区二区三区三区在线| 亚洲精品乱码久久久久久日本蜜臀| 久久久久女教师免费一区| 欧美一级理论性理论a| 亚洲天堂免费观看| 一区二区三区你懂的| 日韩一级黄色片| 亚洲日韩视频| 亚洲日本黄色| 亚洲精品美女在线观看| 亚洲精品国产精品国自产观看浪潮 | 美国三级日本三级久久99| 性欧美长视频| 欧美影院成人| 欧美在线视频日韩| 久久国产精品一区二区三区四区| 亚洲一二三区在线观看| 一区二区三区视频在线| 中国成人黄色视屏| 亚洲视频在线观看| 亚洲免费在线精品一区| 亚洲欧美精品在线| 香蕉久久夜色精品| 久久久久久久性| 久久亚洲精品欧美| 欧美激情乱人伦| 欧美日韩美女在线观看| 欧美深夜福利| 国产精品影音先锋| 国产在线播精品第三| 1024欧美极品| 日韩亚洲欧美精品| 亚洲欧美bt| 久久久久久久久久码影片| 美女诱惑黄网站一区| 91久久精品一区| 亚洲视频一区| 久久精品国产精品| 欧美成人激情视频| 欧美午夜视频在线观看| 国产亚洲精品aa| 亚洲国产aⅴ天堂久久| 一区二区欧美激情| 欧美综合激情网| 欧美激情乱人伦| 一区二区三区免费观看| 欧美在线免费| 欧美日韩国产一区二区三区地区| 国产精品国产三级欧美二区| 黑人巨大精品欧美一区二区| 亚洲精品黄色| 性久久久久久久久久久久| 欧美成人久久| 亚洲视频在线观看视频| 久久一区二区视频| 国产精品a久久久久久| 一区二区三区在线视频观看| 99国产精品久久久| 久久久欧美精品| 99精品热6080yy久久| 久久亚洲综合网| 国产精品裸体一区二区三区| 亚洲第一综合天堂另类专| 亚洲欧美一区二区三区极速播放 | 欧美成人黄色小视频| 亚洲午夜视频在线| 免费黄网站欧美| 国产一区二区精品在线观看| 亚洲视频在线观看视频| 猛男gaygay欧美视频| 亚洲欧美国产va在线影院| 欧美精品一区二区三区在线播放 | 国产亚洲免费的视频看| 亚洲视频福利| 亚洲欧洲在线一区|