我面临一个奇怪的问题,我在 C 头文件中定义了一个结构:
typedef struct iRecActive{
char iRecSID[32];
unsigned char RecStatus;
int curSel;
}iRecAcitve_t;
但是当我在另一个文件中使用相同的结构时,即使我已经仔细检查是否已包含其头文件,编译器也无法识别该结构。以下是错误:
:错误 C2065:“iRecActive_t”:未声明的标识符
以下是我定义结构的文件的完整代码
#ifndef _TS_HTTP_APPLICATION_H_
#define _TS_HTTP_APPLICATION_H_
#ifdef __cplusplus
extern "C"
{
#endif
typedef struct iRecActive{
char iRecSID[32];
unsigned char RecStatus;
int curSel;
}iRecAcitve_t;
int startHTTPServer(int HTMLserverPort);
int closeHTTPServer();
int openTS_SegmenterN();
void pushTSDataN(unsigned char* TSData, int len);
void closeTS_SegmenterN();
void removeAllConnections();
#ifdef __cplusplus
}
#endif
#endif
最佳答案
将iRecAcitve_t
更改为iRecActive_t
。
关于c - C中的typedef结构问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3385533/