標(biāo)題: 關(guān)于多個(gè).C文件報(bào)錯(cuò)的求助 我相信初學(xué)者也會(huì)遇見(jiàn) [打印本頁(yè)]

作者: 我比黑點(diǎn)子更黑    時(shí)間: 2018-1-21 23:23
標(biāo)題: 關(guān)于多個(gè).C文件報(bào)錯(cuò)的求助 我相信初學(xué)者也會(huì)遇見(jiàn)
我使用多個(gè).C文件  總是出問(wèn)題。
對(duì)于我們這樣的菜鳥 我相信初學(xué)者也會(huì)遇見(jiàn)  特來(lái)求助
#ifndef _TYPEDEF_H_
#define _TYPEDEF_H_

typedef unsigned char                uint8;          //  8 bits
typedef unsigned short int        uint16;         // 16 bits
typedef unsigned long int        uint32;         // 32 bits

typedef char                                int8;           //  8 bits
typedef short int                         int16;          // 16 bits
typedef long int                    int32;          // 32 bits


#endif



我定義.C文件后在DELAY.C中調(diào)用。想每個(gè)函數(shù)使用 uint8 uint16 等 替代 unsigned char 這些  數(shù)據(jù)類型。但是總是出錯(cuò) 我把代碼貼出來(lái)看看。報(bào)錯(cuò)代碼如下
DELAY.H(6): error C141: syntax error near 'cnt', expected ')'   

我在.H文件里面已經(jīng)聲明了  還報(bào)錯(cuò) 所附近語(yǔ)法有問(wèn)題 。



我吧這個(gè)聲明刪掉后  在我調(diào)用的.C文件前面重新聲明就不報(bào)錯(cuò)  為什么呢  不是說(shuō)在.H里面聲明后 添加這個(gè).H就可以正常調(diào)用嗎



如下圖 居然就可以了  是什么原因。  這個(gè)聲明為什么不起作用哦。 同時(shí)可以介紹下多個(gè).C的 IO口定義 和變量常理 到底是定義在.C 還是.H里面嗎




作者: luoluoluo136    時(shí)間: 2018-1-22 00:23
好好學(xué)學(xué)基礎(chǔ)知識(shí)。#include "aaaa.xxx"的意思是把a(bǔ)aaa.xxx的內(nèi)容原封不動(dòng)復(fù)制到該處的意思。在你舉例的delay.h中,你并沒(méi)有定義到
作者: 我比黑點(diǎn)子更黑    時(shí)間: 2018-1-22 08:53
luoluoluo136 發(fā)表于 2018-1-22 00:23
好好學(xué)學(xué)基礎(chǔ)知識(shí)。#include "aaaa.xxx"的意思是把a(bǔ)aaa.xxx的內(nèi)容原封不動(dòng)復(fù)制到該處的意思。在你舉例的del ...

#ifndef __Delay_H_
#define __Delay_H_
#include"TYPEDEF.H"

是要這樣寫嗎




       #endif
作者: qinwenfang    時(shí)間: 2018-1-22 09:42
把#include "TYPEDEF.h" 放在DELAY.h 函數(shù)聲明的前面
作者: luoluoluo136    時(shí)間: 2018-1-22 10:08
我比黑點(diǎn)子更黑 發(fā)表于 2018-1-22 08:53
#ifndef __Delay_H_
#define __Delay_H_
#include"TYPEDEF.H"

是的,沒(méi)錯(cuò)





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1