永发信息网

VC++如何获取本机的IP地址?

答案:5  悬赏:0  手机版
解决时间 2021-12-01 15:30
  • 提问者网友:放下
  • 2021-12-01 03:01
VC++如何获取本机的IP地址?
最佳答案
  • 五星知识达人网友:执傲
  • 2021-12-01 03:24
获取本机ip实现过程:
    WSAStartup()。Windows Sockets Asynchronous的启动命令,Windows下的网络编程必须先启用本命令,不然,后续的操作都会报错:10093:WSAStartup() 调用未成功执行过。
    gethostname()获得本机名
    gethostbyname()获得本机网络信息,存储到struct hostent *指针中,返回给调用者
    从struct hostent结构体信息中,获取ip地址,转换成字符串输出

参考代码 :
#include "winsock2.h"
#pragma comment(lib,"ws2_32.lib")
int main(int argc, char* argv[])
{
WSADATA wsaData;
char name[155];
char *ip;
PHOSTENT hostinfo;
if ( WSAStartup( MAKEWORd(2,0), &wsaData ) == 0 )
{
if( gethostname ( name, sizeof(name)) == 0)
{
printf("hostname=%s
", name );
if((hostinfo = gethostbyname(name)) != NULL)
{
ip = inet_ntoa (*(struct in_addr *)*hostinfo->h_addr_list); //得到地址字符串
printf("local host ip: %s
",ip);
}
}
WSACleanup( );
}
return 0;
}
全部回答
  • 1楼网友:污到你湿
  • 2021-12-01 07:32
system("ipconfig");

记得添加stdlib.h的库
  • 2楼网友:迟山
  • 2021-12-01 06:05
iphlpapi.h里有常用网络操作函数
  • 3楼网友:独钓一江月
  • 2021-12-01 05:16
#include
int main()
{
system("ipconfig");
system("pause");
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯