问题1: !defined什么意思?有何作用?
#if !defined (_DATATYPE_H)
#define _DATATYPE_H
..........
#endif问题2:参数代表什么意思?
int AppMsgBox (
    HWND                    hwnd,
    UINT                    fuStyle,
    PTSTR                  pszFormat,
    ... 
)
问题3:swap(int *p1,int *p2)
{
 int temp;
 temp = *p1;
 *p1 = *p2;
 *p2 = temp;
}
上面函数意思是交换两个数,为什么要定义个temp,如果*p1=*p2;*p2=*p1;有什么问题,和上面定义临时变量有什么区别?

解决方案 »

  1.   

    问题3:swap(int *p1,int *p2)
    {
    int temp;
    temp = *p1;
    *p1 = *p2;
    *p2 = temp;
    }
    如果*p1=*p2;*p2=*p1;不使用临时变量,像你说得这么用的话,p2指向的内容赋给p1所指向的空间了,p1指的内容被覆盖了,没了。没办法交换了。
      

  2.   

    int AppMsgBox (
        HWND                    hwnd,
        UINT                    fuStyle,
        PTSTR                  pszFormat,
        ... 
    )
    第一个代表窗口的句柄,父窗口的Handle,第二个估计是传对话框显示的样式,比如显示是否,取消,以及图标样式,第三个估计是显示的字符串的内容
    第一个是为了防止重复包含头文件