如何用C++编程获得某台机器的IP地址

 我来答
匿名用户
推荐于2016-06-03
展开全部
#include <stdio.h>  
#include <stdlib.h>  
#include <winsock.h>  
#pragma comment(lib,"ws2_32.lib")  
  
int getIP(int ,char**)  
{  
  
    char host_name[255];  
    if(gethostname(host_name,sizeof(host_name))==SOCKET_ERROR)  
    {  
  
        printf("Error %d when getting local host name\n",WSAGetLastError());  
        return -1;  
    }  
    printf("host name:%s\n",host_name);  
    struct hostent *phe=gethostbyname(host_name);  
    if(phe==0)  
    {  
  
        printf("Error host lookup\n");  
        return -1;  
  
    }  
  
    for(int i=0;phe->h_addr_list[i]!=0;++i)  
    {  
        struct in_addr addr;  
        memcpy(&addr,phe->h_addr_list[i],sizeof(struct in_addr));  
        printf("Address %d :%s\n",i,inet_ntoa(addr));  
  
  
    }  
    return 0;  
}  
int main(int argc,char *argv[])  
{  
    WSAData wsaData;  
    if(WSAStartup(MAKEWORD(1,1),&wsaData)!=0)  
    {  
  
        system("pause");  
        return -1;  
    }  
    int result=getIP(argc,argv);  
    WSACleanup();  
    system("pause");  
    return result;  
}
Storm代理
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式