gpt4 book ai didi

c - C 中未知的类型名称?

转载 作者:行者123 更新时间:2023-11-30 20:57:57 24 4
gpt4 key购买 nike

好吧,我正在用 C 语言编写一些代码,该程序主要使用指针,我几乎完成了,但是遇到了这个问题,因为我在部分代码中不断收到未知的类型名称。例如,在下面的代码中,我不断收到“未知类型名称 Pulse”。本质上,它使用 TinyTimber 内核使用 C 中的对象,但 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);

最佳答案

I keep getting ''Unknown type name Pulse''

在使用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

关于c - C 中未知的类型名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55078704/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com