typedef struct tagMSG {     // msg 
    HWND   hwnd;     
    UINT   message; 
    WPARAM wParam; 
    LPARAM lParam; 
    DWORD  time; 
    POINT  pt; 
} MSG,*PMSG;这里*PMSG是什么意思啊

解决方案 »

  1.   

    指针类型  
    PMSG pMsg;
    相当于MSG *pMsg
      

  2.   

    这里使用typedef关键字,定义名字叫tagMSG的struct。typedef将MSG声明类型名称,与tagMSG一样,表示MSG可以用来声明或定义struct变量,其成员如tagMSG;*pMsg作为一个整体,由typedef声明,亦被声明为类型,从整体上看,(*pMsg)和tagMSG一样,但是在类型表示中,*号表示指针,意思是说:*pMsg是一个指针类型,它可以用来声明指针类型的struct,其成员如tagMSG。
      

  3.   

    声明PMSG为struct tagMSG *类型
      

  4.   


    一个较好习惯的的定义是:
    typedef struct tagMSG { // msg
    HWND hwnd;
    UINT message;
    WPARAM wParam;
    LPARAM lParam;
    DWORD time;
    POINT pt;
    } MSG,NEAR *PMSG, FAR *LPMSG;近指针,远指针。尽管现在不区别了。