连接到C中的特定IP地址?

时间:2012-04-12 06:50:37

标签: c network-programming

我已在客户端代码中使用此功能完成了对基本聊天服务器和客户端的所有测试:

    struct sockaddr_in server;
  struct hostent * hp;

  server.sin_family = PF_INET;
  hp = gethostbyname( "localhost" );
  if ( hp == NULL )
  {
    perror( "Unknown host" );
    return EXIT_FAILURE;
  }

重点是“本地主机”。这段代码运行良好。现在我试图在两台计算机之间测试它,我不确定如何指定我想要连接的服务器的名称/地址。需要改变什么?

2 个答案:

答案 0 :(得分:3)

没有什么需要改变。只需将"localhost"替换为"192.168.0.1""stackoverflow.com"即可。

请注意gethostbyname如果标记为已过时,则应由getaddrinfo替换。

修改

getnameinfo - > getaddrinfo

答案 1 :(得分:1)

啊,您可以将任何IP地址传递到gethostbyname函数:

hp = gethostbyname( "74.125.224.73" );

    hp = gethostbyname( "google.com" );

将获得该IP地址。