VC 中的IP地址控件,关联一个DWORD的变量dwValue,如何将这个dwValue按IP地址显示转化成4个数字或者字符串?得到的dwValue是一个数字,怎么转化成四个数字或者这个IP的字符串?

解决方案 »

  1.   

    直接用
    int GetAddress(
       BYTE& nField0,
       BYTE& nField1,
       BYTE& nField2,
       BYTE& nField3 
    );
      

  2.   


    这个怎么用
    我的是一个地址控件,关联能得到IP地址为m_dwIpValue
        DDX_IPAddress(pDX, IDC_CON_IPADDRESS, m_dwIpValue);
    但m_dwIpValue是一个DWORD值,怎么才能显示出地址
      

  3.   

    DWORD dwIP = ....;in_addr addr = {0};
    addr.S_un.S_addr = dwIP;
    char* buf = inet_ntoa(addr);
    AfxMessageBox(CString(buf));
      

  4.   

    要理解原理:
    p[0] = (byte) ((data >> 24) & 0xFF);
    p[1] = (byte) ((data >> 16) & 0xFF);
    p[2] = (byte) ((data >> 8) & 0xFF);
    p[3] = (byte) (data & 0xFF);