C++ 的bind函数

C 语言中的 bind 函数是指将一个套接字和特定的 IP 地址和端口号绑定在一起。它通常在服务器端程序中使用,用来指定服务器的地址和端口号,以便客户端程序能够连接到服务器。

语法:

int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);

其中,sockfd 是指要绑定的套接字的文件描述符;addr 是一个指向 sockaddr 结构体的指针,其中包含了要绑定的 IP 地址和端口号;addrlen 是 sockaddr 结构体的大小。

返回值:

  • 成功时返回 0;
  • 失败时返回 -1,并设置 errno。

示例代码:

``` #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h>

#define PORT 12345

int main(void) { int sockfd; struct sockaddr_in server_addr;

// 创建套接字 sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd == -1) { perror("socket"); exit(EXIT_FAILURE); }

// 设置服务器地址 memset(&server_addr, 0, sizeof(server_addr)); server_addr.sin_family = AF_INET; server_addr.sin_addr.s_addr = htonl(INADDR_ANY); server_addr.sin_port = htons(PORT);

// 绑定套接字 if (bind(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) { perror("bind"); close(sockfd); exit(EXIT_FAILURE); }

// 其他代码

close

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值