我需要创建一个程序,该程序将通过UDP套接字与同一台计算机上的其他程序进行通信。它将从stdin读取命令,并且其中一些命令将使其发送/接收数据包而不会停止执行。我已经阅读了一些信息,但是由于我不熟悉套接字编程,需要快速完成此工作,因此我有以下问题:

  • 我需要获得一个随机的未使用端口供程序监听,并保留它,以便其他程序可以与此进行通信,并且该端口也未被其他程序保留。我还需要将端口号存储在变量中,以备将来使用。
  • 由于通信是同一台计算机上的跨进程的,所以我想知道是否可以使用PF_LOCAL。

  • 还欢迎使用此类套接字的代码示例,以及发送/接收字符串的示例。

    最佳答案

    调用bind()来指定端口0。这将允许OS选择未使用的端口。然后,您可以使用getsockname()检索选定的端口。

    关于c - 获取UDP套接字的随机端口,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8842404/

    10-11 23:17
    查看更多