音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

新手求助c51頭文件問題

作者:guochao 欄目:新手園地
新手求助c51頭文件問題
新學(xué)C51遇到一個問題,我寫了一個頭文件,有函數(shù)的聲明和一個變量的聲明,然后兩個源文件都#include它,在頭文件中我已經(jīng)用#ifndef,#define,#endif,但是在編譯的時候還是說*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
重復(fù)定義,后來我在定義的前面加上了extern就OK。
我想問已經(jīng)用了條件編譯怎么還是有這個問題?為什么只有變量有這個錯誤而函數(shù)沒有啊,多謝啊

2樓: >>參與討論
guochao
大家梆梆忙啊
舉例來說吧
頭文件  example.h
#ifndef  _I_
#define  _I_
   CHAR data i;
   void a (void);
   
#endif

一個源文件:
#include <example.h>

main(){
     a();
}

另一個源文件
#include <example.h>

void a (void)
{
   ;
}
這樣也會出現(xiàn)重復(fù)定義的錯誤,暈啊


3樓: >>參與討論
computer00
不是這樣弄法的。
我示范一下:

/**********************
頭文件  example.h
**********************/

#ifndef  __EXAMPLE_H__
#define  __EXAMPLE_H__

//variables
extern CHAR data i;

//functions
void a(void);
   
#endif




/**********************
example.c
**********************/

CHAR data i;  //

void a(void)
{
//Your code
}


/********************
main.c
********************/

//other HEAD files

#include "example.h"


void main(void)
{
//Your code........
i=??
??=i;
a();
}


/************************
TEST.c
***********************/
//other HEAD files

#include "example.h"

void TEST(void)
{
i=??;
??=i;
a();
}

4樓: >>參與討論
likee
不要笑
看不懂和guochao的有什么區(qū)別.

5樓: >>參與討論
computer00
當(dāng)然不一樣,變量的定義只放在一個C文件中,
變量的i的定義,只放在了example.c中,而在example.h中做了聲明,extern CHAR data i,這樣在需要用到的地方使用include "example.h"就可以了。

如果把定義放在.h文件中,當(dāng)然會出現(xiàn)重復(fù)定義的錯誤。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
畢業(yè)設(shè)計:"基于TM5416的USB/PC通信軟件的開發(fā)"-有什么好建議?
求助
Modelsim 仿真軟件是否可以畫輸入波形看輸出仿真結(jié)果
請問各位DX,用C51編程時,如何給C中的一個變量指定存儲單元
單片機與PC機程序運行的差異(瞎想)
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號