绑定和套接字编程

时间:2013-06-25 03:48:12

标签: c sockets

在编写服务器套接字编程时是否有必要将socketfd绑定到IP addrees。 我的意思是在没有调用bind系统调用的情况下编写套接字编程是否有可能? 像socket一样 - >听 - >接受 - >读/写/ - >关。

2 个答案:

答案 0 :(得分:2)

套接字应绑定到端口或unix套接字文件。 你的意思是you don't want to define port number for listen?然后绑定端口号0.它适用于随机端口。

memset((char *) &reader_addr, 0, sizeof(reader_addr));
reader_addr.sin_family = PF_INET;
reader_addr.sin_addr.s_addr = htonl(INADDR_ANY);
reader_addr.sin_port = 0;

if (bind(server_fd, (struct sockaddr *)&reader_addr, sizeof(reader_addr)) < 0) {
    perror("reader: bind");
    exit(1);
}

答案 1 :(得分:1)

您在服务器端使用bind

简单地想象它是您办公室的开关板。 bind为其提供了一个电话号码,以便其他人知道要拨打的电话号码。运营商listen回答并拨打电话(即处理它)。