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

<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 小蔥蘸醬 閱讀(1007) 評論(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,就不會聯接錯誤,跟引用有什么關系呢?
  回復  更多評論    
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲日韩欧美视频一区| 欧美激情第3页| 欧美电影免费观看网站| 午夜在线精品偷拍| 久久成人国产| 久久久蜜桃精品| 欧美3dxxxxhd| 亚洲国产乱码最新视频| 亚洲破处大片| 亚洲一区二三| 久久这里只精品最新地址| 欧美搞黄网站| 国产精品视频一二| 伊人成人开心激情综合网| 亚洲激情视频网站| 性一交一乱一区二区洋洋av| 又紧又大又爽精品一区二区| 艳妇臀荡乳欲伦亚洲一区| 野花国产精品入口| 亚洲欧美一区二区三区在线| 久久久人成影片一区二区三区观看 | 一道本一区二区| 亚洲欧美国产精品桃花| 久久久蜜桃精品| 欧美日韩大片| 国产一区在线视频| 一区二区三区www| 久久午夜精品一区二区| 99精品国产福利在线观看免费| 欧美一区二区三区婷婷月色| 欧美全黄视频| 亚洲国产精品电影| 久久精品99国产精品日本| 最新亚洲电影| 久久久综合激的五月天| 国产精品美女久久久浪潮软件 | 欧美区视频在线观看| 国产欧美一区二区白浆黑人| 亚洲美女视频在线免费观看| 久久亚洲二区| 午夜精品久久久久久久99樱桃| 欧美美女bbbb| 亚洲人成毛片在线播放女女| 久久先锋资源| 欧美专区一区二区三区| 国产欧美综合一区二区三区| 亚洲一区在线看| 亚洲日本乱码在线观看| 蜜桃av久久久亚洲精品| 国内欧美视频一区二区| 久久精品日韩欧美| 午夜精品一区二区在线观看| 国产精品一区视频网站| 亚洲一区视频在线观看视频| 亚洲精品一二| 欧美人妖另类| 亚洲丝袜av一区| 99精品久久久| 国产精品久久久久久久久久久久久久 | 亚洲欧美一区二区三区极速播放| 亚洲男人影院| 国产精品www色诱视频| 亚洲一区二区三区四区五区午夜 | aa级大片欧美三级| 亚洲黄色高清| 欧美国产精品v| 亚洲免费观看高清完整版在线观看熊| 久久亚洲综合色| 久久久91精品国产| 在线国产精品播放| 亚洲高清av| 欧美大片在线看| 一区二区精品在线| 亚洲午夜精品福利| 国内伊人久久久久久网站视频| 久久人人看视频| 鲁大师成人一区二区三区| 亚洲区免费影片| 99热免费精品在线观看| 国产精品亚发布| 麻豆国产精品777777在线| 免费久久精品视频| 一区二区三区视频观看| 亚洲在线播放| 精品福利免费观看| 亚洲人妖在线| 国产乱码精品一区二区三区五月婷 | 亚洲精品视频在线看| 妖精视频成人观看www| 国产精品久久久亚洲一区 | 这里只有精品在线播放| 国产一区三区三区| 亚洲精品视频一区二区三区| 国产精品久久久久久久7电影 | 欧美 日韩 国产 一区| 欧美乱人伦中文字幕在线| 欧美专区日韩专区| 欧美成人午夜| 久久精品一区四区| 欧美日韩国内自拍| 男人的天堂亚洲在线| 国产精品青草久久| 亚洲欧洲日产国产综合网| 国产日韩欧美在线一区| 亚洲品质自拍| 在线播放日韩专区| 亚洲一区二区三区在线看| 亚洲人成77777在线观看网| 午夜精品亚洲一区二区三区嫩草| 亚洲精品一二区| 久久先锋影音av| 久久gogo国模裸体人体| 欧美日本国产在线| 中文高清一区| 欧美成人午夜免费视在线看片| 欧美日韩精品一二三区| 欧美成人中文| 国产真实乱子伦精品视频| 亚洲图片欧洲图片日韩av| 亚洲三级免费| 久久综合网hezyo| 久久久xxx| 国产麻豆精品theporn| 一本色道久久| 国产精品99久久不卡二区| 欧美黄色免费| 亚洲国产视频直播| 亚洲国产高清自拍| 老司机一区二区| 欧美sm视频| 在线日韩欧美| 老司机午夜精品视频在线观看| 久久婷婷色综合| 极品日韩久久| 久久久亚洲精品一区二区三区| 老司机精品久久| 在线精品亚洲一区二区| 久久精品国产欧美亚洲人人爽| 久久都是精品| 韩国av一区二区三区在线观看 | 欧美xxxx在线观看| 亚洲福利视频在线| 日韩视频一区二区三区在线播放| 老司机免费视频一区二区| 欧美aⅴ99久久黑人专区| 在线观看亚洲一区| 免费久久99精品国产自| 亚洲黄网站黄| 一本一道久久综合狠狠老精东影业 | 一区二区在线观看视频| 久久天天躁狠狠躁夜夜av| 欧美大片在线观看| 亚洲免费大片| 国产精品视频你懂的| 久久精品综合| 亚洲人成在线播放网站岛国| 亚洲天堂免费在线观看视频| 国产精品一区二区黑丝| 久久精品国产综合| 亚洲黑丝在线| 欧美一区2区三区4区公司二百| 国内精品久久久久久久果冻传媒| 久久亚洲综合色一区二区三区| 91久久久久久| 亚洲欧美精品在线观看| 一色屋精品视频免费看| 欧美日韩视频| 久久精品99国产精品酒店日本| 91久久精品国产91久久性色| 午夜精品网站| 91久久久久久国产精品| 国产精品女主播| 久久一区国产| 亚洲网站视频福利| 欧美国产91| 午夜精品亚洲| 91久久精品国产91性色tv| 亚洲欧美国产毛片在线| 香蕉久久国产| 在线播放中文一区| 国产精品vvv| 美女视频一区免费观看| 亚洲欧美日本在线| 亚洲激情电影在线| 久久欧美中文字幕| 亚洲欧美精品| 一级成人国产| 亚洲国产综合在线看不卡| 国产视频一区在线观看一区免费| 欧美激情综合五月色丁香小说| 久久精品国产一区二区电影| 中文在线不卡| 亚洲精品国产精品国自产观看浪潮 | 欧美另类69精品久久久久9999| 久久国产视频网站| 亚洲免费在线视频| 99成人精品| 亚洲福利专区| 欧美成人中文| 欧美成人在线免费观看|