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

分享

inet_addr 和inet_ntoa函數(shù)作用

 wusiqi111 2017-07-21


我們使用socket進(jìn)行通信的時候,,我們需要指定三個元素:通信域(地址族)、IP地址,、端口號,,這三個元素由SOCKADDR_IN結(jié)構(gòu)體定義,為了簡化編程一般將IP地址設(shè)置為INADDR_ANY,,如果需要使用特定的IP地址則需要使用inet_addr 和inet_ntoa完成字符串和in_addr結(jié)構(gòu)體的互換,,in_addr是SOCKADDR_IN成員,其代表IP地址,。

inet_add函數(shù)聲明如下:

  1. unsigned long inet_addr(const char* cp);  

參數(shù):

    cp代表點(diǎn)分十進(jìn)制的IP地址,,如1.2.3.4


inet_ntoa 函數(shù)聲明如下:

  1. char* inet_ntoa(struct in_addr in);  

參數(shù):

    in代碼in_addr的結(jié)構(gòu)體,其結(jié)構(gòu)體如下:

  1. struct in_addr   
  2. {  
  3.     union   
  4.     {  
  5.         struct { UCHAR s_b1,s_b2,s_b3,s_b4; } S_un_b;  
  6.         struct { USHORT s_w1,s_w2; } S_un_w;  
  7.         ULONG S_addr;  
  8.     } S_un;  
  9. };  


函數(shù)使用代碼如下:

  1. SOCKADDR_IN sock;  
  2. sock.sin_family = AF_INET;  
  3. //將字符串轉(zhuǎn)換為in_addr類型  
  4. sock.sin_addr.S_un.S_addr =  inet_addr("192.168.1.111");  
  5. sock.sin_port = htons(5000);  
  6.   
  7. //將in_addr類型轉(zhuǎn)換為字符串  
  8. printf("inet_ntoa ip = %s\n",inet_ntoa(sock.sin_addr));  

結(jié)果輸出:

inet_ntoa ip = 192.168.1.111

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

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多