c c 混編實現查詢本地IP位址

2022-03-14 07:11:27 字數 1620 閱讀 6070

一、思路

1、要想得到本地ip位址,可以通過本機名來查詢,所以首先得得到本機名。

2、牽涉到ip位址,首先想到牽涉到網路協議,因此得載入套接字協議,所以先使用wsastartup函式完成對winsock服務的初始化。

二、步驟

三、實現程式的模組化

1、包含檔案工作

#include #include 

#include

#pragma comment(lib,"ws2_32.lib")

bool getlocaladdr();

2、網路協議初始化工作

wsadata wsadata;

word wversionrequested;

wversionrequested = makeword(2,2

);int initwsa = wsastartup(wversionrequested,&wsadata);

3、通過主機名來獲取本地連線的ip位址

if (0 ==initwsa)

//通過主機名獲取位址

// hostent *hostinfo;

hostinfo =gethostbyname(hostname);

if (null ==hostinfo)

//將網路位址轉換成字串,以便**

char *ipaddr;

ipaddr = inet_ntoa(*(struct in_addr *)*hostinfo->h_addr_list);

cout

<< ipaddr <

//解除安裝winsock庫,並釋放所有資源

wsacleanup();

return

true

; }

else

return

false;

四、完整的程式

#include #include 

#include

#pragma comment(lib,"ws2_32.lib")

bool

getlocaladdr();

int main(void

)bool

getlocaladdr()

//通過主機名獲取位址

hostent *hostinfo;

hostinfo =gethostbyname(hostname);

if (null ==hostinfo)

//將網路位址轉換成字串,以便**

char *ipaddr;

ipaddr = inet_ntoa(*(struct in_addr *)*hostinfo->h_addr_list);

cout

<< ipaddr <

//解除安裝winsock庫,並釋放所有資源

wsacleanup();

return

true

; }

else

return

false

;}

mapx實現查詢

1 屬性查詢。find search方法 注意的是find方法只支援tab表檔案,不支援空間資料 表。find 與foxpro中locate定位命令想類似。search 支援sql語句。寫法 僅指sql語句的where 部分,且from語句中只能有乙個表 僅對單錶進行操作 select from l...

如何實現matlab與c c 混編

很多情況下,機器學習的演算法都是在matlab下實現的。當然我發現現在很多也是用python寫的。這些其實都不重要。師兄經常抱怨cnn dpm在matlab下實現一張圖的行人檢測速度實在是太慢。採取了c和matlab的混編。今天我們就來看看究竟怎麼混編的。其實說到底就是一維指標!1.首先安裝編譯器。...

php 實現查詢快取

適合讀者 本教程適合於那些對快取sql查詢以減少資料庫連線與執行的負載 提高指令碼效能感興趣的php程式設計師。概述 這樣乙個系統通過把sql查詢的結果快取到系統的乙個檔案中儲存,從而阻止連線資料庫,構造查詢與取得返回結果而提高了響應時間。有些系統資料庫並不是放在web伺服器上的,這樣需要乙個遠端連...