国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++獲取本機MAC,IP,MASK地址的方法

2020-05-23 14:20:15
字體:
供稿:網(wǎng)友
這篇文章主要介紹了C++獲取本機MAC,IP,MASK地址的方法,主要通過IPHLPAPI.lib調(diào)用相關(guān)函數(shù)實現(xiàn)該功能,是非常實用的技巧,需要的朋友可以參考下
 
 

本文實例講述了C++獲取本機MAC,IP,MASK地址的方法,分享給大家供大家參考。具體方法如下:

 

復(fù)制代碼代碼如下:
#include "InitSock.h"  
#include <stdio.h>  
  
#include <iphlpapi.h>  
#pragma comment(lib, "IPHLPAPI.lib")  
  
u_char g_ucLocalMac[6];  
DWORD g_dwGatewayIP;  
DWORD g_dwLocalIP;  
DWORD g_dwMask;  
  
BOOL GetGlobalData()  
{  
    PIP_ADAPTER_INFO pAdapterInfo = NULL;  
    ULONG ulSize = 0;  
    //為結(jié)構(gòu)申請內(nèi)存  
    ::GetAdaptersInfo(pAdapterInfo, &ulSize);  
    pAdapterInfo = (PIP_ADAPTER_INFO)::GlobalAlloc(GPTR, ulSize);  
    if ( ERROR_SUCCESS  == ::GetAdaptersInfo(pAdapterInfo, &ulSize))  
    {  
        if (pAdapterInfo != NULL)  
        {  
            memcpy(g_ucLocalMac, pAdapterInfo->Address, 6);  
            g_dwGatewayIP = ::inet_addr(pAdapterInfo->GatewayList.IpAddress.String);  
            g_dwLocalIP = ::inet_addr(pAdapterInfo->IpAddressList.IpAddress.String);  
            g_dwMask = ::inet_addr(pAdapterInfo->IpAddressList.IpMask.String);  
        }  
    }  
    //in_addr表示IP的結(jié)構(gòu)  
    in_addr in;  
    in.S_un.S_addr = g_dwLocalIP;  
    printf("  IP Address:%-30s/n", ::inet_ntoa(in));  
  
    in.S_un.S_addr = g_dwGatewayIP;  
    printf("  Gateway Address:%-30s/n", ::inet_ntoa(in));  
  
    in.S_un.S_addr = g_dwMask;  
    printf("  MASK Address:%-30s/n", ::inet_ntoa(in));  
  
    u_char* p = g_ucLocalMac;  
    printf("  MAC:%02X-%02X-%02X-%02X-%02X-%02X/n", p[0], p[1], p[2], p[3], p[4], p[5]);  
    ::GlobalFree(pAdapterInfo);  
    pAdapterInfo = NULL;  
    return TRUE;  
}  
  
void main()  
{  
    CInitSock initSock;  
      
    GetGlobalData();  
  
    printf("*******************************");  
    getchar();  
}

 

希望本文所述對大家的C++程序設(shè)計有所幫助。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 手游| 德保县| 民乐县| 沿河| 乌审旗| 威信县| 淮北市| 河西区| 桐城市| 九寨沟县| 吉首市| 麻阳| 华亭县| 乐陵市| 武宁县| 达拉特旗| 江都市| 塘沽区| 望城县| 敖汉旗| 衡山县| 马尔康县| 永定县| 湟源县| 开阳县| 新邵县| 惠来县| 栾川县| 白朗县| 大渡口区| 牟定县| 渭南市| 苏州市| 阜城县| 汾西县| 兰州市| 仙游县| 呈贡县| 黔西县| 农安县| 和顺县|