if(!AfxSocketInit())
{
printf("加载套接字库失败!");
return;
}
SOCKET m_socket=socket(AF_INET,SOCK_DGRAM,0);
SOCKADDR_IN addrTo; CString strSend = "发送内容"; addrTo.sin_family=AF_INET;
addrTo.sin_port=htons(4569);
addrTo.sin_addr.S_un.S_addr=inet_addr("127.0.0.1"); sendto(m_socket,strSend,strlen(strSend)+1,0,
(SOCKADDR*)&addrTo,sizeof(SOCKADDR)); 请问如何将strSend变为unicode格式发送。求代码
{
printf("加载套接字库失败!");
return;
}
SOCKET m_socket=socket(AF_INET,SOCK_DGRAM,0);
SOCKADDR_IN addrTo; CString strSend = "发送内容"; addrTo.sin_family=AF_INET;
addrTo.sin_port=htons(4569);
addrTo.sin_addr.S_un.S_addr=inet_addr("127.0.0.1"); sendto(m_socket,strSend,strlen(strSend)+1,0,
(SOCKADDR*)&addrTo,sizeof(SOCKADDR)); 请问如何将strSend变为unicode格式发送。求代码
sendto(m_socket,(char *)strSend,(wcslen(strSend)+1)*sizeof(wchar_t),0,
(SOCKADDR*)&addrTo,sizeof(SOCKADDR));
wchar_t strSend=L"发送内容";
会报这个错
error C2440: 'initializing' : cannot convert from 'unsigned short [100]' to 'unsigned short'
又浪费带宽
不如传过去如果需要的话再转
如果非要转的话
用MultiByteToWideChar
wchar_t *strSend=L"发送内容";
sendto(m_socket,(char *)strSend,(wcslen(strSend)+1)*sizeof(wchar_t),0,
(SOCKADDR*)&addrTo,sizeof(SOCKADDR));