Tag: bind

如何在C中创建UDP服务器?

我正在尝试用C编写UDP服务器(在Linux下)。 我知道在socket()函数中我必须使用SOCK_DGRAM而不是SOCK_STREAM 。 if ( (list_s = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP)) < 0 ) { fprintf(stderr, "ERROR"); } 但是现在,当我尝试运行程序时(编译时没有错误),它表示listen()中存在错误。 这是对它的调用: if (listen(list_s, 5) < 0) { fprintf(stderr, "ERROR IN LISTEN"); exit(EXIT_FAILURE); } 你能弄明白问题是什么吗? 这是代码: int list_s; /* listening socket */ int conn_s; /* connection socket */ short int port; /* port number */ struct sockaddr_in servaddr; […]

绑定到特定的IP地址和端口以接收UDP数据

我正在尝试接收由PlayCap( http://www.signal11.us/oss/playcap/ )广播到网络地址192.168.103.255端口3000的UDP数据。 我遇到了绑定到此地址和端口的问题。 这是我的Java代码: public static void main(String[] args) { try { DatagramSocket s = new DatagramSocket(); InetSocketAddress address = new InetSocketAddress(“192.168.103.255”, 3000); s.bind(address); byte buffer[] = new byte[1024]; DatagramPacket packet = new DatagramPacket(buffer, buffer.length); System.out.println(“Waiting…”); s.receive(packet); System.out.println(“Received!”); } catch (Exception e) { e.printStackTrace(); } } 这会返回错误: java.net.SocketException: already bound at java.net.DatagramSocket.bind(Unknown Source) at […]