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

<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

統計

  • 隨筆 - 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>
            久久婷婷蜜乳一本欲蜜臀| 欧美精品久久天天躁| 国产精品一区二区在线观看| 亚洲一区观看| 亚洲午夜女主播在线直播| 国产精品免费区二区三区观看| 午夜影院日韩| 欧美在线亚洲在线| 尤物yw午夜国产精品视频| 欧美成人免费网| 欧美精品一区二| 亚洲欧美国产一区二区三区| 亚洲欧美在线磁力| 精品成人在线观看| 亚洲精品黄色| 国产精品久久久久7777婷婷| 久久精选视频| 欧美顶级大胆免费视频| 亚洲一区综合| 久久久久久电影| 一区二区三区国产在线观看| 午夜精品区一区二区三| 在线观看国产精品网站| 一区二区三区国产精华| 国内久久婷婷综合| 亚洲精品一区二区三区99| 国产精品视频1区| 亚洲高清精品中出| 国产精品一区二区三区乱码| 免费日韩精品中文字幕视频在线| 欧美日韩成人在线观看| 麻豆精品网站| 国产精品免费在线| 亚洲国产天堂久久国产91| 国产精品综合| 亚洲精品免费一二三区| 国内精品久久久久影院优 | 国产精品乱人伦一区二区| 久久婷婷综合激情| 国产精品video| 亚洲国产日韩欧美在线图片 | 欧美在线观看日本一区| 9i看片成人免费高清| 久久字幕精品一区| 午夜欧美视频| 欧美日韩精品二区| 欧美电影免费观看网站| 国产模特精品视频久久久久 | 久久久久久69| 国产精品高清在线观看| 欧美肥婆bbw| 伊人夜夜躁av伊人久久| 亚洲视频香蕉人妖| 在线亚洲高清视频| 欧美激情欧美狂野欧美精品| 久久综合九色综合欧美狠狠| 国产欧美一区二区色老头| 亚洲最新视频在线| 亚洲婷婷在线| 欧美日韩精品福利| 亚洲日本欧美天堂| 亚洲免费av观看| 欧美精品激情| 亚洲日韩第九十九页| 亚洲人成毛片在线播放女女| 久久久久久网| 欧美r片在线| 亚洲国产电影| 毛片一区二区三区| 亚洲成人在线免费| 欧美在线看片| 欧美一区二区三区的| 国产精品久久久久久久久久久久 | 亚洲欧洲三级电影| 亚洲卡通欧美制服中文| 欧美高清视频在线观看| 亚洲欧洲综合| 在线亚洲一区| 国产精品美女主播在线观看纯欲| 亚洲网站在线| 久久精品国产精品亚洲| 红桃视频成人| 欧美成人首页| 亚洲视频自拍偷拍| 久久久久国产精品www| 在线播放亚洲一区| 欧美国产一区视频在线观看| 99热免费精品在线观看| 欧美一区二区播放| 在线精品视频一区二区三四| 欧美激情亚洲国产| 亚洲视频免费在线| 麻豆精品视频在线观看视频| 亚洲日本理论电影| 国产精品男女猛烈高潮激情| 久久精品国产精品 | 亚洲欧美在线aaa| 国产在线成人| 欧美激情亚洲国产| 亚洲中无吗在线| 欧美+亚洲+精品+三区| 日韩一级免费观看| 国产一区二区三区不卡在线观看| 久久一区二区三区av| 一区二区三区免费观看| 久久综合图片| 亚洲欧美三级伦理| 亚洲国产精品久久久久秋霞蜜臀| 欧美日韩精品免费观看视频| 欧美一区不卡| 一区二区黄色| 欧美激情亚洲精品| 久久狠狠久久综合桃花| 一本色道久久88综合亚洲精品ⅰ | 欧美日韩一区二区三区在线观看免 | 亚洲国产精品久久精品怡红院| 欧美日韩在线三级| 久久综合网hezyo| 亚洲一区视频在线观看视频| 亚洲国产精品成人| 久久精品亚洲精品| 亚洲欧美卡通另类91av| 亚洲精品一区二区网址 | 欧美日韩成人综合| 美女网站在线免费欧美精品| 欧美一区二区三区四区视频| 一区二区三区久久久| 亚洲高清资源综合久久精品| 久久视频国产精品免费视频在线| 日韩午夜在线| 亚洲精品乱码久久久久久蜜桃91 | 国产精品亚洲一区二区三区在线| 欧美激情视频免费观看| 久久综合九色综合欧美就去吻| 亚洲综合欧美日韩| 一区二区三区www| 99re在线精品| 99re6热只有精品免费观看| 亚洲国产一区视频| 欧美激情小视频| 亚洲成人自拍视频| 欧美成人午夜激情视频| 久久综合久久综合九色| 久久青青草综合| 久久九九国产精品| 久久久久久网站| 久久精品免费观看| 久久另类ts人妖一区二区| 久久精品国产免费观看| 久久精品国产亚洲aⅴ| 久久精品欧美日韩| 久久影院午夜论| 久久伊伊香蕉| 亚洲第一色在线| 亚洲激情在线播放| 日韩一级成人av| 一本色道88久久加勒比精品 | 亚洲激情第一页| 亚洲美女色禁图| 亚洲桃色在线一区| 香蕉成人啪国产精品视频综合网| 欧美在线免费观看| 毛片基地黄久久久久久天堂| 欧美激情第六页| 国产精品久久久久一区二区三区共| 国产精品色网| 在线观看成人一级片| 日韩午夜视频在线观看| 亚洲影院色在线观看免费| 久久精品91| 亚洲电影在线| 一本色道久久加勒比88综合| 欧美国产精品va在线观看| 亚洲成色999久久网站| 亚洲综合视频网| 一区二区三区日韩| 午夜视频一区| 欧美电影在线观看| 国产精品久久一卡二卡| 很黄很黄激情成人| 亚洲美女诱惑| 久久精品视频导航| 亚洲精品乱码久久久久久蜜桃麻豆| 亚洲视频在线观看三级| 久久久噜噜噜久久中文字幕色伊伊| 欧美激情综合| 韩国免费一区| 亚洲一区二区三区在线| 欧美 亚欧 日韩视频在线| 日韩天堂av| 久久婷婷蜜乳一本欲蜜臀| 国产精品看片资源| 亚洲欧洲日本一区二区三区| 午夜精品久久久久久99热软件| 欧美高清视频一二三区| 性色av香蕉一区二区| 国产精品v欧美精品v日韩 | 欧美午夜在线一二页| 亚洲第一久久影院| 久久精品国产久精国产思思|