fd_set 是一个描述符的集合. 其中每一位是标示每一个描述符. 通过FD_SET()宏在集合中设置描述符.下面是宏的实现...

 1 #define FD_SET(fd, set) do { \
 2      u_int __i; \
 3      for (__i = 0; __i < ((fd_set FAR *)(set))->;fd_count; __i++) { \
 4          if (((fd_set FAR *)(set))->;fd_array[__i] == (fd)) { \
 5              break; \
 6          } \
 7      } \
 8      if (__i == ((fd_set FAR *)(set))->;fd_count) { \
 9          if (((fd_set FAR *)(set))->;fd_count < FD_SETSIZE) { \
10              ((fd_set FAR *)(set))->;fd_array[__i] = (fd); \
11              ((fd_set FAR *)(set))->;fd_count++; \
12          } \
13      } \
14 } while(0)

相关文章:

  • 2021-08-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-18
  • 2021-07-04
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-10
  • 2022-12-23
  • 2021-12-15
  • 2021-11-17
  • 2022-12-23
相关资源
相似解决方案