常用的幾個網路api

2021-08-11 14:11:31 字數 1685 閱讀 1990

1.通過**獲取ip

標頭檔案struct hostent *gethostbyname(const char *name); 返回乙個目的主機的結構體

struct hostent  

;  #define h_addr h_addr_list[0]   //儲存的是ip位址 

h_addr 儲存了目的主機的ip不好意思他是乙個網路序 並且是char*的資料 所以先要轉成網路 序才能去轉

#include #include #include #include #include #include #include using namespace std;

int main()

{ struct hostent* host = null;

sockaddr_in caddr;

char www[20]="";

fgets(www,20,stdin);//多讀個回車

www[strlen(www)-1]='\0';

cout

// 網路位元組轉字串

printf("ip address : %s\n",inet_ntop(host->h_addrtype,host->h_addr,ip,sizeof(ip)));    這個api也可以

2.通過套接字獲取到該套接字的埠和ip

獲取本地協議的位址

getsockname(listenfd, (

struct

sockaddr *)&listendaddr, &listendaddrlen);

using namespace std;

9 int main()

10 {

11 struct hostent* host = null;

12 struct sockaddr_in caddr,saddr;

13 int socketfd=socket(af_inet,sock_stream,0);

14 memset(&caddr,0,sizeof(caddr));

15 caddr.sin_family=af_inet;

16 caddr.sin_port=htons(8888);

17 caddr.sin_addr.s_addr=inet_addr("10.104.238.147");

18 int res=bind(socketfd,(sockaddr *)&caddr,sizeof(caddr));

19 listen(socketfd,5);

20 socklen_t len=sizeof(saddr);

21 getsockname(socketfd,(sockaddr*)&saddr,&len);

22 cout<

getpeername函式用於獲取與某個套接字關聯的外地協議位址

getpeername(connfd, (

struct

sockaddr *)&connectedaddr, &connectedaddrlen);

//獲取connfd表示的連線上的本地位址

VUE 幾個常用的全域性API

1.extend vue.extend options options 建立元件的建構函式為了復用 通過vue.extend 原始碼分析下來,extend 是擴充套件繼承了父類的屬性,方法 深度複製 擴充套件父類規則 子元件和父元件的生命週期事件會合併在乙個陣列裡。父元件在前子元件在後。子元件和父元...

js 陣列幾個常用API

1.陣列方法 map var arr 1,2,3,4,5,6 var b arr.map el el a arr.map el console.log b 6 1a 2a 3a 4a 5a 6a map 返回乙個陣列,其中每個元素都使用指定函式進行過轉換。2.arr.filter 返回乙個陣列,只有...

網路程式設計 常用API

該類用於標識網路上的硬體資源,表示網際網路協議的ip位址 該類沒有構造方法,所以不能直接new出乙個物件,可以通過該類的靜態方法獲得inetaddress的物件 public class ipdemo url 統一資源定位符,表示internet上某一資源的位址 public class urlde...