它表示here發送函數期望const char *。如何使用winsock的send()函數發送寬字符?
如何發送寬字符?我嘗試了以下內容:
void MyClass::socksend(const wchar_t* wbuffer) {
int i;
char *buffer = (char *)malloc(MB_CUR_MAX);
wctomb_s(&i,buffer, MB_CUR_MAX, (wchar_t)wbuffer);
int buflen = strlen(buffer) + 2;
char sendbuf[DEFAULT_BUFLEN];
strcpy_s(sendbuf,buflen,buffer);
sendbuf[buflen - 1] = '\n';
int senderror = send(this->m_socket, sendbuf, buflen, 0);
// error handling, etc goes here...
}
這並沒有達到我期望的效果。它似乎沒有發送任何東西到套接字。我該如何解決?