【发布时间】:2010-12-03 22:04:45
【问题描述】:
它说here 发送函数需要 const char*。
如何发送宽字符?我尝试了以下方法:
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...
}
这并没有达到我的预期。它似乎没有向套接字发送任何内容。我该如何解决这个问题?
【问题讨论】:
标签: c++ visual-studio-2010 visual-c++ winsock