qq_36769719 2020-08-17 21:34 采纳率: 100%
浏览 135
已采纳

MFC char*转BYTE[] 中文乱码!

VS2013 多字节
MFC char*转BYTE[] 中文乱码!

long CImplSocketCim::__SendPackage(char* pPackageToSend, long nLen)
{
    long rlt = 0;
    CMakeSockCIMProtocol* pPackage = (CMakeSockCIMProtocol*)pPackageToSend;

    BYTE lpszToSend[51200];
    memcpy(&lpszToSend, pPackageToSend, nLen);
    if (vFAILED(m_pSocket->TcpWriteValue(lpszToSend, nLen, 0))){
        rlt = 0x000009;
    }
    ::OutputDebugString("TcpWriteValue end\n");
    return rlt;
}

pPackageToSend转给lpszToSend输出 字母不乱码,中文会乱码,点开lpszToSend中文部分的值都是lpszToSend[1] =? lpszToSend[2] =?

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-08-17 22:33
    关注

    memcpy(&lpszToSend, pPackageToSend, nLen);
    看看nLen在有中文的时候对不对。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?