// 创建面向连接的socket
sock =socket(PF_INET,SOCK_STREAM,0);
// 使用TCP/IP协议
sockAddr.sin_family=AF_INET;
// 指定连接的端口
sockAddr.sin_port=htons(Param.dwPort);
// 指定连接的IP地址
sockAddr.sin_addr.S_un.S_addr= htonl(Param.dwIp);
char * szIp = inet_ntoa(sockAddr.sin_addr);
CString str;
// 发起连接
if(connect(sock,(LPSOCKADDR)&sockAddr,sizeof(sockAddr)) == 0)
{
// 连接成功
str.Format("%s 端口 %d 连接成功"),szIp,Param.dwPort);
}
else
{
// 连接失败
str.Format(_TEXT("%s 端口 %d 连接成功"),szIp,Param.dwPort);
}
输出显示不正常 vs2008搜索了下,应该是char* 转 std::wstring 的问题
可以我还是不懂,那位大哥能说明了些~ ~
str.Format("%s 端口 %d 连接成功"),szIp,Param.dwPort);
// 连接失败
str.Format(_TEXT("%s 端口 %d 连接成功"),szIp,Param.dwPort);
这么近的两句话,都要写的不一样?
不知道程序是你自己写的?还是照书上抄的?
按第二种格式写:str.Format(_TEXT("%s 端口 %d 连接成功"),szIp,Param.dwPort);
{
// 连接成功
str.Format(_T("%s 端口 %d 连接成功"),szIp,Param.dwPort);
}
else
{
// 连接失败
str.Format(_T("%s 端口 %d 连接 fail"),szIp,Param.dwPort);
}
//用_TEXT宏,自动适应unicode和multibyte
自己仿照书上搞的原文str.Format("%s 端口 %d 连接成功"),szIp,Param.dwPort);这样的形式
我直接编译,回显正常
”192.168.1.1 端口 80 连接失败“
可我,自己仿照画了个,却不行_T 和_TEXT都是我自己+上去的,可是还不行回显乱码
“乱码 端口 80 连接失败”
就是ip不显示出来 。。
基本都是按照步骤 复制,粘贴过来的应该是char * szIp 的问题吧,迷糊