send函数参数如下:
ssize_t send(int sockfd, const void *buf, size_t len, int flags);
修改了很多次后终于可行的版本:
int TCP::send(const string& msg){
printf("send msg to server: \n");
//struct sockaddr_in addr;
//if( send((int)_socketfd, (const void *)msg.c_str(), (size_t)length, 0) < 0)
//char szText[] = "PC请求连接... \r\n";
//if( ::sendto(_socketfd, szText, strlen(szText), 0, (sockaddr*)&addr,sizeof(addr)) < 0 )
int ret;
if(ret = ::send(_socketfd, (const void *)msg.c_str(),msg.length(), 0) < 0)
{
printf("send msg error: %s(errno: %d)\n", strerror(errno), errno);
}
return ret;
}