[英]Unknown type name in C?
好的,所以我正在用 C 編寫一些代碼,該程序主要使用指針,我快完成了,但是有這個問題,我在代碼的某些部分不斷得到未知的類型名稱。 例如,在下面的代碼中,我不斷收到“未知類型名稱 Pulse”。本質上它使用 C 語言中的對象使用 tinytimber 內核,但代碼中包含 Pulse。
#include "Pulse.h"
typedef struct {
Object super;
Pulse *PulserOne;
Pulse *PulserTwo;
Pulse *Pulsing;
} GUI;
這是創建脈沖的另一類代碼。
typedef struct {
Object super;
int pin;
int frequency;
int stored;
int oldFrequency;
} Pulse;
# define initPulse(pin, frequency,stored,oldFrequency{initObject(),number, frequency, stored, oldFrequency
這是聲明對象的主類。
Pulse PulserOne = initPulse(4, 0, 0, 0, &p);
Pulse PulserTwo = initPulse(6, 0, 0, 0, &p);
GUI gui = initGUI(&PulserOne, &PulserTwo, &PulserOne);
我不斷收到“未知類型名稱脈沖”
在使用之前移動Pulse
的定義。 @UnholySheep
#include "Pulse.h"
// move here.
typedef struct {
Object super;
int pin;
int frequency;
int stored;
int oldFrequency;
} Pulse; // Pulse defined here
typedef struct {
Object super;
Pulse *PulserOne; // Pulse used here
Pulse *PulserTwo;
Pulse *Pulsing;
} GUI;
替代方案:聲明Pulse
的存在
// v--v--------- Use some name
typedef struct Fred Pulse; // Pulse declared here
typedef struct {
Object super;
Pulse *PulserOne; // Pulse used here
Pulse *PulserTwo;
Pulse *Pulsing;
} GUId;
typedef struct Fred {
Object super;
int pin;
int frequency;
int stored;
int oldFrequency;
} Pulse; // Pulse defined here
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.