5.3. bind()- 我在哪個 port?
#include <sys/types.h>
#include <sys/socket.h>
int bind(int sockfd, struct sockaddr *my_addr, int addrlen);struct addrinfo hints, *res;
int sockfd;
// 首先,用 getaddrinfo() 载入地址结构:
memset(&hints, 0, sizeof hints);
hints.ai_family = AF_UNSPEC; // use IPv4 or IPv6, whichever
hints.ai_socktype = SOCK_STREAM;
hints.ai_flags = AI_PASSIVE; // fill in my IP for me
getaddrinfo(NULL, "3490", &hints, &res);
// 建立一个 socket:
sockfd = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
// 将 socket bind 到我们传递给 getaddrinfo() 的 port:
bind(sockfd, res->ai_addr, res->ai_addrlen);Last updated