地址轉換函式htonl和inet_pton
引數是32bit的二進位制數值,在轉換地址時就是32位的主機位元組序ip地址(經常用點分十進位制)
用法:servaddr.sin_addr.s_addr=htonl(127.0.0.1);
servaddr.sin_addr.s_addr=htonl(INADDR_ANY); // INADDR_ANY真實值為0.0.0.0
int inet_pton(int family,const char *strptr,void *addrptr);
該函式完成兩個功能:1.字串->二進位制數值 2.主機位元組序->網路位元組序(所以呼叫此函式後不需htonl了)
第二個引數是ip地址字串的指標
用法:inet_pton(AF_INET,argv[1],&servaddr.sin_addr);
第三個引數使用&servaddr.sin_addr.s_addr也可以通過
總結:數值型的ip地址轉換用htonl,字串型別的用inet_pton
相關推薦
地址轉換函式htonl和inet_pton
uint32_t htonl(unin32_t host32bitvalue);引數是32bit的二進位制數值,在轉換地址時就是32位的主機位元組序ip地址(經常用點分十進位制)用法:servaddr.sin_addr.s_addr=htonl(127.0.0.1);ser
Unix網路程式設計卷一: 網路地址轉換函式 (inet_pton和inet_ntop)
#include <arpa/inet.h> int inet_pton(int family, const char *strptr, void *addrptr);//成功返回1,非法輸入為0,出錯為-1 const char *inet_ntop(in
地址轉換函式inet_aton、 inet_ntoa、 inet_addr和inet_pton 、inet_ntop
inet_aton,inet_addr和inet_ntoa在點分十進位制數串(如,“192.168.1.10")與他的32位網路位元組二進位制值之間轉換IPV4地址,有2個比較新的函式inet_pton和inet_ntop,這2個對IPV4和IPV6地址都能處理。
1.socket程式設計:socket程式設計,網路位元組序,函式介紹,IP地址轉換函式,sockaddr資料結構,網路套接字函式,socket相關函式,TCP server和client
1Socket程式設計 socket這個詞可以表示很多概念: 在TCP/IP協議中,“IP地址+TCP或UDP埠號”唯一標識網路通訊中的一個程序,“IP 地址+埠號”就
1.socket基礎知識:埠;sockaddr_in;位元組序轉換函式(本地/網路位元組序);地址轉換函式
1.埠 在進行通訊的時候,要首先通過IP地址獲取主機 再通過Port用來區分和主機上的哪個應用程式通訊 2.IPv4套介面地址結構:網際套接字地質結構 sockaddr_in:man 7 ip 1.標頭檔案:netinet/in.h 2.sockaddr_in結構 struct
01大小端、網路位元組序、地址轉換函式的使用
#include <stdio.h> #include <string.h> #include <sys/socket.h> #include <sys/so
linux--IP地址轉換函式
一、Linux下的地址結構 typedef uint32_t in_addr_t; struct sockaddr { unsigned short sa_family; char sa_data[14]; }; struct sockadd
linux網路地址轉換函式
在socket程式設計時,會出現指定了ip,埠號,卻連不上,這是因為網路地址跟本地主機地址的字元順序不一樣導致的。在linux下提供了一些操作函式,如下: unsigned long int htonl(unsigned long int hostlong);用來將引數指定的32位hostlong 轉換成網路
Python內建進位制轉換函式(實現16進位制和ASCII轉換)
在進行wireshark抓包時你會發現底端視窗報文內容左邊是十六進位制數字,右邊是每兩個十六進位制轉換的ASCII字元,這裡使用Python程式碼實現一個十六進位制和ASCII的轉換方法。 hex() 轉換一個整數物件為十六進位制的字串 >>> hex(16) '0x10' >&
wordpress各種獲取路徑和URl地址的函式總結
wordpress中的路徑也不是很負責,有人為了讓wordpress執行速度更快,就直接寫了絕對地址,其實這樣是很不好的,有可能別人修改了wordpress程式的地址,那麼這樣你編寫的這個外掛或者是主題就只有你自己用,別人無法使用,這樣做得不償失,為了避免錯誤,瞭解WordPress中與獲取路徑相關的函式很重
普通字元和寬字元之間轉換函式
以下函式會在內部分配記憶體,需要呼叫程式呼叫delete釋放記憶體: namespace _com_util { // Convert char * to BSTR // BSTR __stdcall Con
IP地址轉換成Long型數字演算法和原理(全網最細!!)
將ip地址轉換成數字地址的時候是我做一個歸屬地查詢的專案是碰見的,開始我並不明白將IP轉換成數字地址的原理,可能老師上課講了但是沒有好好聽,我覺得想理解下面演算法就應該理解IP地址和數字地址的原理(菜鳥專用(^_^)) IP地址一般是一個32位的二進位制數意思就是如果將IP地
MYSQL 獲取當前日期及日期格式,和常用時間轉換函式
經過多次嘗試本人的目標完成: select newworkorder.WorkOrderNum,newworkorder.ProjectCode, newworkorder.WorkEstComDate,newworkorder.WorkStatus,newworkorder.workgroup
異常發生後如何將log裡對應的地址轉換為所在的檔案和行號
這個轉換需要藉助一個GNU工具:arm-linux-androideabi-addr2line(ARM 32位版本)或aarch64-linux-android-addr2line(ARM 64位版本) 工具位置(具體以實際目錄位置為準): ARM 32位版本:prebuilts/gcc/linu
Scala中的隱式轉換函式、隱式引數和隱式類
所謂隱式轉換函式指的是implicit關鍵字修飾的且只有一個引數的函式。 例如: inplicit def int2String(n:Int):String = (n.toString) 上案例:我們把Fruit物件轉換成了Monkey物件 //
嵌入式Linux網路程式設計,網路基礎,套接字socket(SOCK_STREAM、SOCK_DGRAM、SOCK_RAW),IP地址,埠號,位元組序,位元組序轉換函式,IP地址的轉換
文章目錄 1,socket 1.1,socket的型別(SOCK_STREAM、SOCK_DGRAM、SOCK_RAW) 1.2,socket的位置 2,IP地址 2.1,特殊IP地址: 3,埠號
深入淺出記憶體管理-虛擬地址和實體地址轉換
談起記憶體管理,首先我們就要搞清楚虛擬地址和實體地址的關係。本文就是簡單介紹下這兩個基礎概念。 實體地址 實體地址指實際存在的實體記憶體地址,比我有一個2G的記憶體晶片,那麼系統的實體記憶體就是2G,我要訪問該記憶體中的一個地址,那就需要對應的實體記憶體。 虛擬地址 虛擬
Oracle OCP 學習日誌-使用轉換函式和條件表示式-04
使用TO_CHAR函式處理日期 TO_CHAR(data,'format_model') SELECT employee_id, TO_CHAR(hire_date, 'MM/YY') Month_Hired FROM employ
SQL轉換函式(CAST 和 CONVERT)
如果 SQL Server 2005 沒有自動執行資料型別的轉換,可以使用 CAST 和 CONVERT 轉換函式將一種資料型別的表示式轉換為另一種資料型別的表示式。例如,如果比較 char 和 datetime 表示式、smallint 和 int 表示式或不同長度的 cha
虛擬專用網VPN和網路地址轉換NAT
專用網之間的專用網路地址只能跟其他的專用網路地址互動,無法連線到公網,原因是:在網際網路中的所有路由器設定對目的地址是專用地址的資料舉報一律不進行轉發。 專用網通過租用公用網並進行加密技術保護(確保資料傳輸安全)作為專用網之間的通訊載體