久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

linux字節(jié)序轉(zhuǎn)換函數(shù)和地址轉(zhuǎn)換函數(shù)

 怎么了啊早上 2014-08-19
剛才閱讀代碼的時候看到了一個字節(jié)排序函數(shù),,一時想不起具體用法了。想想學(xué)習(xí)linux下的網(wǎng)絡(luò)編程也不少時間了,,這些字節(jié)排序和轉(zhuǎn)換的函數(shù)還是不太清楚,,容易混淆。今天索性把這方面的知識匯總一下,,爭取以后能夠熟練的認識和運用。
字節(jié)順序函數(shù):
小端字節(jié)序:將低序字節(jié)存儲在起始地址,。(linux)
大端字節(jié)序:將高序字節(jié)存儲在起始地址,。(網(wǎng)絡(luò)字節(jié)序)
舉個例子:對于整數(shù)0x12345678來說,在不同的系統(tǒng)中存放的方式如下圖:
  
正是因為網(wǎng)際協(xié)議采取的是大端字節(jié)序,,我們在編程的時候才需要考慮網(wǎng)絡(luò)字節(jié)許和主機字節(jié)序之間的轉(zhuǎn)換,。下面是四個轉(zhuǎn)換函數(shù)(在某些采用大端字節(jié)序的系統(tǒng)里面,這四個函數(shù)被定位空宏):

復(fù)制代碼
#include <netinet/in.h>
uint16_t htons(uint16_t host16bitvalue);
uint32_t htonl(uint32_t host32bitvalue);  
//均返回網(wǎng)絡(luò)字節(jié)序

uint16_t ntohs(uint16_t net16bitvalue);
uint32_t ntohl(uint32_t net32bitvalue);   
//均返回主機字節(jié)序
復(fù)制代碼

地址轉(zhuǎn)換函數(shù):
下面介紹兩組地址轉(zhuǎn)換函數(shù),。首先是第一組:

復(fù)制代碼
#include <arpa/inet.h>
int   inet_aton(const char *strptr, struct in_addr *addrptr);
                                        
//返回:1——串有效,,0——串有錯
charinet_ntoa(struct in_addr inaddr);
                                        
//返回一個指向ASCII字串的指針
in_addr_t inet_addr(const char *strptr);
                                        
//成功返回網(wǎng)絡(luò)字節(jié)序,錯誤返回INADDR_NONE
復(fù)制代碼

接下來是第二組,,這兩個函數(shù)比較新,,對于IPv4和IPv6都能處理。p的含義是presentation,,代表ASCII字串,。n的含意是numberic,代表網(wǎng)絡(luò)地址值,。

#include <netinet/in.h>
#define INET_ADDRSTRLEN  16
#define INET6_ADDRSTRLEN 46

#include <arpa/inet.h>
int inet_pton(int family, const char *strptr, void *addrptr);
                                  
//返回:1——成功,,輸入的不是有效表達格式,-1——出錯
const char* inet_ntop(int family, const void *addrptr, char *strptr, size_t len);
                                  
//返回:指向結(jié)果的指針——成功,,NULL——出錯               

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多