haoqy_1123
驱动牛犊
驱动牛犊
  • 注册日期2007-04-27
  • 最后登录2011-12-19
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望43点
  • 贡献值0点
  • 好评度27点
  • 原创分0分
  • 专家分0分
阅读:4054回复:1

求助:error C2228: left of '.Chan0Depth_I' must have class/struct/union type

楼主#
更多 发布于:2007-05-05 09:22
  在"aamc429d8_lib.h"头文件中定义了一个结构
typedef struct TriggerDepth
{
    BYTE Chan0Depth_I;
    BYTE Chan1Depth_I;
    BYTE Chan2Depth_I;
    BYTE Chan3Depth_I;
    BYTE Chan4Depth_I;
    BYTE Chan5Depth_I;
    BYTE Chan6Depth_I;
    BYTE Chan7Depth_I;
    BYTE Chan0Depth_O;
    BYTE Chan1Depth_O;
    BYTE Chan2Depth_O;
    BYTE Chan3Depth_O;
    BYTE Chan4Depth_O;
    BYTE Chan5Depth_O;
    BYTE Chan6Depth_O;
    BYTE Chan7Depth_O;
}TriggerDepth_STRUCT;

然后在一个.cpp的文件中包含了这个头文件并定义了
extern TriggerDepth_STRUCT stTriggerlevel;
TriggerDepth_STRUCT tpstTriggerLevel;

然后应用
tpstTriggerLevel.Chan0Depth_I = GetPrivateProfileInt(section, "RxTL", stTriggerLevel.Chan0Depth_I, path);

在build的时候出现了如下错误:
error C2065: 'stTriggerLevel' : undeclared identifier
error C2228: left of '.Chan0Depth_I' must have class/struct/union type

请各位高手帮忙看一下,先谢了!!!
要吃饭,所以必须学会驱动开发!!!
yushui213
驱动小牛
驱动小牛
  • 注册日期2006-04-17
  • 最后登录2016-01-09
  • 粉丝1
  • 关注0
  • 积分1015分
  • 威望115点
  • 贡献值0点
  • 好评度102点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-09-28 20:52
Re:求助:error C2228: left of '.Chan0Depth_I' mu
extern TriggerDepth_STRUCT stTriggerlevel;
extern表示外部引用,即stTriggerlevel变量是外部引用,除非你在别的地方声明了这个变量,否则直接用这个变量编译时会提示undeclared identifier的错误!
游客

返回顶部