有时候变量很长,看到许多人用宏定义,自己凭记忆尝试写写好象又不会使用了。
#define INDEX inttypedef struct tagTstruct
{
int Width;
int Length;
}TPoint;TPoint g_tPoint[10];#define PTPoint g_tPoint[INDEX].Width;
1、上面我这样定义对不对
2、这个PTPoint怎么使用阿

解决方案 »

  1.   


     g_tPoint[INDEX]中的INDEX应该是具体值吧,而不应该是int类型。
      

  2.   

    如何变量太长用typedef.
    eg:
    typedef LONG l;
      

  3.   

    #define PTPoint g_tPoint[INDEX].Width; 肯定是有问题的。
    #define就是简单的替代作用。预编译的时候编译器会把所有你的INDEX用int代替。那你这理就是
    #define PTPoint g_tPoint[int].Width; 
    若有int a = PTPoint;就会变成int a = g_tPoint[int].Width;; 这肯定会有编译错误的