【问题标题】:C++ error : Expected an identifierC++ 错误:需要一个标识符
【发布时间】:2013-08-11 06:56:44
【问题描述】:

我正在尝试制作标题,但它给了我错误:

#ifndef __OFFSETS__H_
#define __OFFSETS__H_

typedef unsigned long MAIN = 0x22EA120;//0x022BF0C0 ;
typedef unsigned long RECOILVT = 0x020A3ACC;//0x020FA644;
typedef unsigned long DEVIATIONVT = 0x020A3AC8;//0x020FA640;

#define BF3_X                       
#define BF3_X_BASE                  
#define BF3_X_SIZE                  
#define OFFSET_CLIENTGAMECONTEXT    
#define OFFSET_BORDERINPUTNODE      
#define OFFSET_DXRENDERER           
#define OFFSET_GAMERENDERER         
#define pbcl_BASE                   
#define OFFSET_PBSS_BUFFER          
#define OFFSET_PBSS_TAKESS                 
#define OFFSET_GIVEDAMAGE           Address
#define OFFSET_COMPUTEAAB           0x010C95F0 // Function - BF3_X_BASE = IDA       
#define OFFSET_AABWORLDTRANSFORM    0x010C6610 // Function - BF3_X_BASE = IDA Address
#define OFFSET_DBGRENDERER2         0x00000000 // Function - BF3_X_BASE = IDA 
#define OFFSET_DBGRENDRAWTEXT       0x004B7610 // Function - BF3_X_BASE = IDA   
#define OFFSET_DBGRENDRAW2DLINE     0x004B9980 // Function - BF3_X_BASE = IDA 
#define OFFSET_DBGRENDRAWRECTLINE   0x004A11E0 // Function - BF3_X_BASE = IDA Address
#define OFFSET_DBGRENDRAWRECT           
#define OFFSET_DBGRENDRAWSPHERE     0x004B7610 // Function - BF3_X_BASE = IDA 
#define OFFSET_UPDATEMATRICES       0x006C3A90 // Function - BF3_X_BASE = IDA     
#define OFFSET_W2S                  0x00EF1590 // Function - BF3_X_BASE 
#define OFFSET_RS_BEGINDRAW         0x006800A1 // Function - BF3_X_BASE = IDA 
#define OFFSET_CLIENTPLAYER_ENTRY   0x00A99A20 // Function - BF3_X_BASE = IDA Address
#define OFFSET_CSW_GETWEAPON        0x01049B60 // Function - BF3_X_BASE = IDA 
#define OFFSET_CSW_GETHEAT          0x00000000 // Function - BF3_X_BASE = IDA 
#endif

错误是

error C2513: 'unsigned long' : no variable declared before '='

我不知道为什么?任何想法 ?

【问题讨论】:

  • 您使用的是reserved identifier
  • 你可能应该拿出你这本很好的入门书,阅读有关 typedef、宏和变量的内容。

标签: c++ long-integer identifier specifier


【解决方案1】:

这些行不正确

typedef unsigned long MAIN = 0x22EA120;//0x022BF0C0 ;
typedef unsigned long RECOILVT = 0x020A3ACC;//0x020FA644;
typedef unsigned long DEVIATIONVT = 0x020A3AC8;//0x020FA640;

您正在定义一个类型。你不能给一个类型一个值。

做一个或另一个!

编辑

要么

一)

typedef unsigned long MAIN;
typedef unsigned long RECOILVT;
typedef unsigned long DEVIATIONVT;

b)

#define MAIN 0x22EA120
#define RECOILVT 0x020A3ACC
#define DEVIATIONVT 0x020A3AC8

c)

const int MAIN = 0x22EA120;//0x022BF0C0 ;
const int RECOILVT = 0x020A3ACC;//0x020FA644;
const int DEVIATIONVT = 0x020A3AC8;//0x020FA640;

你的选择

【讨论】:

  • 我将其更改为 DWORD,我认为没有错误
【解决方案2】:

我想你的意思是typedef unsigned long MAIN = 0x22EA120; 可能是const unsigned long MAIN = 0x22EA120;//0x022BF0C0 ;

【讨论】:

  • 是的,我们都在猜测。当我写回复时,您没有“解决方案”,所以我想我会提供一些解决问题的方法 - 因为我认为这就是 OP 想要做的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-17
  • 1970-01-01
  • 2023-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-31
相关资源
最近更新 更多