gpt4 book ai didi

c++ - 客户端在使用套接字连接到服务器时遇到问题?

转载 作者:太空宇宙 更新时间:2023-11-04 05:15:46 25 4
gpt4 key购买 nike

我的服务器已启动并正在运行(通过 telnet 连接有效,所以我知道它的功能)但我的客户端似乎无法建立连接。我感觉这与我填写 sockaddr_in serverAddr 结构的方式有关。

有人可以帮忙吗?谢谢。

int clientSocket;
char hostname[256];
struct sockaddr_in serverAddr;
struct hostent *host;
socklen_t theirAddrSize;

gethostname(hostname, sizeof(hostname));
host = gethostbyname(hostname);

memset(&serverAddr, 0, sizeof(serverAddr));
serverAddr.sin_family = AF_INET;
serverAddr.sin_addr.s_addr = inet_addr( host->h_name );
serverAddr.sin_port = htons( 30000 );

if ( clientSocket = socket( AF_INET, SOCK_STREAM , 0 ) == -1) {
cerr << "socket failed ; exiting..." << endl;
exit(1);
}

if ( connect( clientSocket , (struct sockaddr *) &serverAddr , sizeof(serverAddr) ) == -1 ) {
cerr << "connect failed ; exiting..." << endl;
exit(1);
}

connect 总是返回 -1。

最佳答案

使用 host->h_addr_list[0] 代替 inet_addr(host->h_name)

关于c++ - 客户端在使用套接字连接到服务器时遇到问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1527109/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com