gpt4 book ai didi

c++ - LPBYTE 宏在编译时生成错误 - C++

转载 作者:太空宇宙 更新时间:2023-11-04 14:57:57 25 4
gpt4 key购买 nike

我有以下代码在尝试构建应用程序时生成错误:

#define LPAFDU LPBYTE;

typedef struct appAfDataIndIeee_tag
{
integrPktHead_t head;
BYTE flags;
WORD dstShort;
BYTE dstEndpoint;
BYTE srcShort;
BYTE srcIeee[8];
WORD clusterId;
BYTE afduLength;
LPAFDU afdu; // <-- error
} appAfDataIndIeee_t;

这是它产生的错误:

error C2208: 'BYTE *' : no members defined using this type
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

如果我将 LPADFU 换成 LPBYTE,它会成功编译。我更愿意使用 LPADFU 的定义或类型定义。有谁知道我怎样才能使这项工作?谢谢。

最佳答案

去掉 #define 末尾的分号(它是宏的一部分):

#define LPAFDU LPBYTE

然而,更好的方法是使用 typedef 而不是 #define:

typedef LPBYTE LPAFDU;

typedef 最重要的优点是它们遵守范围规则。

关于c++ - LPBYTE 宏在编译时生成错误 - C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4504109/

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