#include <WinSock2.h>
#pragma comment(lib,"ws2_32") //链接到ws2_32动态链接库 class CInitSock
{
public:
CInitSock(BYTE minorVer = ,BYTE majorVer = )
{
WSADATA wsaData;
WORD VersionRequset;
VersionRequset = MAKEWORD(minorVer,majorVer);
//装载winsock库
if (WSAStartup(VersionRequset,&wsaData)!=)
{
//装载winsock库失败,推出
exit();
}
}
~CInitSock()
{
WSACleanup();
}
};

上面是头文件

#include <iostream>
#include "a.h"
using namespace std;
CInitSock Initsock;
bool GetIp();
int main()
{
GetIp();
return ;
}
bool GetIp()
{
char szText[];
//获取本机主机名称
int iRet;
iRet = gethostname(szText,);
int a = WSAGetLastError();
if (iRet!=)
{
printf("gethostname() Failed!");
return FALSE;
}
//通过主机名获取到地址信息
HOSTENT *host = gethostbyname(szText);
if (NULL==host)
{
printf("gethostbyname() Failed!");
return false;
}
in_addr PcAddr;
for (int i=;;i++)
{
char *p = host->h_addr_list[i];
if (NULL==p)
{
break;
}
memcpy(&(PcAddr.S_un.S_addr),p,host->h_length);
char*szIP = ::inet_ntoa(PcAddr);
printf("本机的ip地址是:%s\n",szIP);
} system("pause");
}

源代码文件

C++获取本机的ip地址程序的更多相关文章

  1. 【Win 10 应用开发】获取本机的IP地址

    按照老规矩,也是朋友的建议,老周今天在吹牛之前,先讲一个小故事. 有朋友问我,老周,你现在还发短信吗,你每个月用多少电话费?唉,实话说,现在真的发短信不多了,套餐送的130条短信,每月都发不了一条.至 ...

  2. 获取本机的IP地址(局域网)与主机名称

    编写内容保存为bat @echo off &setlocal enabledelayedexpansion Rem '/*========获取本机的IP地址(局域网)=========*/ e ...

  3. 获取本机的IP地址和mac地址

    1. 以前一直用ipconfig来查看ip地址,哈哈哈,现在发现挺好玩 #获取本机的IP地址和mac地址 import uuid import socket def get_mac_address() ...

  4. Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP

    Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP IP 工具类 源代码: /** * <p> * * @author XiaoPengwei ...

  5. 获取本机的ip地址(排除虚拟机,蓝牙等ip)

    项目中遇到了要获取本地ip的需求,网上查找资料遇到很多坑,很多Java获取本机ip地址的方法要么是根本获取不到,要么是获取的有问题. 网上常见的方法如下 InetAddress.getLocalHos ...

  6. C#获取本机IP方法,获取本机局域网IP地址方法

    1. private void GetIP() { string hostName = Dns.GetHostName();//本机名 //System.Net.IPAddress[] address ...

  7. 怎样获取本机的ip地址

    首先介绍一下用到的结构体 struct hostent { const char *h_name; // official name of host char **h_aliases; // alia ...

  8. android获取本机的IP地址和mac物理地址

    /获取本机IP地址 public String getLocalIpAddress() { WifiManager wifiManager = (WifiManager) getSystemServi ...

  9. 获取本机的IP地址

    /// <summary> /// 获取本机IP地址 /// </summary> /// <returns>本机IP地址</returns> publ ...

随机推荐

  1. Mac设置SVN:Cornerstone3

    前因 在windows下用Tortoisesvn.可惜Tortoisesvn没有Mac版,只能上知乎寻找适合于 Mac的SVN软件. 经过 找到了一款名为Cornerstone的软件.在App Sto ...

  2. 程序设计入门-C语言基础知识-翁恺-第四周:循环控制-详细笔记(四)

    目录 第四周:循环控制 4-1 for循环 4-2 循环控制 各运算符优先级(图) 4-3 课后习题 4-4 讨论题 第四周:循环控制 4-1 for循环 for循环像一个计数循环:设定一个计数器,初 ...

  3. sync-settings(vscode)

    vscode插件以及设置 sync-download e45c6db33cd91d661e0cc545efb6817c

  4. linux自学(五)之开始centos学习,Xshell远程连接

    上一篇:linux自学(四)之开始centos学习,网络配置 前面操作都是在电脑中的虚拟机上操作的,比较麻烦,需要来回切换.下面我将使用远程连接工具Xshell进行操作,Xshell直接百度下载即可. ...

  5. 每天一个linux命令(文件上传下载文件操作):【转载】gzip命令

    减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间.gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用.gzip不仅可以用 ...

  6. Java并发--线程池的使用

    在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统 ...

  7. 使用 ExceptionDispatchInfo 捕捉并重新抛出异常

    当你跑起了一个异步线程,并用 await 异步等待时,有没有好奇为什么能够在主线程 catch 到异步线程的异常? 当你希望在代码中提前收集好异常,最后一并把收集到的异常抛出的时候,能不能做到就像在原 ...

  8. 剑指offer第四章

    剑指offer第四章 1.二叉树的镜像 二叉树的镜像:输入一个二叉树,输出它的镜像 分析:求树的镜像过程其实就是在遍历树的同时,交换非叶结点的左右子结点. 求镜像的过程:先前序遍历这棵树的每个结点,如 ...

  9. 呵呵sql

    INSERT  INTO fnd_document_folder_structure_t (folder_name,parent_folder_id,company_type_id,inv_flag, ...

  10. Redis 列表 List 主要操作函数

    /** * redis 列表 List Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素导列表的头部(左边)或者尾部(右边) */ //lpush 新增一个列,多个列可以用空格隔 ...