網(wǎng)絡(luò)序,主機(jī)序總是迷迷糊糊的。需要整理一下。
千言萬(wàn)語(yǔ),不如代碼來(lái)的實(shí)在。哈哈,說(shuō)干就干。
作為一家“創(chuàng)意+整合+營(yíng)銷(xiāo)”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們?cè)跇I(yè)內(nèi)良好的客戶口碑。創(chuàng)新互聯(lián)提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站建設(shè)、創(chuàng)意表現(xiàn)、網(wǎng)頁(yè)制作、系統(tǒng)開(kāi)發(fā)以及后續(xù)網(wǎng)站營(yíng)銷(xiāo)運(yùn)營(yíng)等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營(yíng)模式與有效的網(wǎng)絡(luò)營(yíng)銷(xiāo)方法,創(chuàng)造更大的價(jià)值。
#include <stdio.h>
#include <stdlib.h>
#include <arpa/inet.h>
int host_order()
{
unsigned long a = 0x12345678;
unsigned char * p = (unsigned char *)(&a);
printf("主機(jī)字節(jié)序:%0x %0x %0x %0x\n",p[0],p[1],p[2],p[3]);
unsigned long b = htonl(a);
p = (unsigned char *)(&b);
printf("網(wǎng)絡(luò)字節(jié)序:%0x %0x %0x %0x\n",p[0],p[1],p[2],p[3]);
return 0;
}
int net_order()
{
struct in_addr ipaddr;
unsigned long addr = inet_addr("192.168.1.100");
unsigned char *p = (unsigned char *)(&addr);
printf("addr = %u \n",addr);
printf("%0x %0x %0x %0x : inet_addr 192.168.1.100\n",p[0],p[1],p[2],p[3]);
printf("%d %d %d %d : inet_addr 192.168.1.100\n",p[0],p[1],p[2],p[3]);
unsigned long addr_host = ntohl(addr);
p = (unsigned char *)(&addr_host);
printf("%0x %0x %0x %0x : inet_addr ntohl 192.168.1.100\n",p[0],p[1],p[2],p[3]);
printf("%d %d %d %d : inet_addr ntohl 192.168.1.100\n",p[0],p[1],p[2],p[3]);
printf("addr_host = %u\n",addr_host);
return 0;
}
int main()
{
int ret = 0;
//ret = host_order();
ret = net_order();
return ret ;
}
編譯之。
gcc -g -o test_order test_order.c
跑一下。
[root@localhost test]# ./test_order
addr = 1677830336
c0 a8 1 64 : inet_addr 192.168.1.100
192 168 1 100 : inet_addr 192.168.1.100
64 1 a8 c0 : inet_addr ntohl 192.168.1.100
100 1 168 192 : inet_addr ntohl 192.168.1.100
addr_host = 3232235876
清晰明了。有助于快速理解。
分享文章:網(wǎng)絡(luò)序,主機(jī)序?qū)W習(xí)
轉(zhuǎn)載來(lái)于:http://vcdvsql.cn/article24/gjoije.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、網(wǎng)站排名、電子商務(wù)、外貿(mào)網(wǎng)站建設(shè)、、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)