gpt4 book ai didi

c - linux/if.h 和 net/if.h 有什么区别?

转载 作者:IT王子 更新时间:2023-10-29 00:42:42 26 4
gpt4 key购买 nike

评论说 net/if.h 是 GNU C 库的一部分,linux/if.h 说它是“TCP/IP 的实现LINUX 操作系统的协议(protocol)套件。”

但是为什么会有两个,每个有什么用呢?

最佳答案

最初,两者都提供了管理网络接口(interface)的数据结构。linux/if.h 特别与 Linux 内核的网络接口(interface)交互有关。实际上,它在文件的开头是这样说的:

/*
* INET An implementation of the TCP/IP protocol suite for the LINUX
* operating system. INET is implemented using the BSD Socket
* interface as the means of communication with the user level.
*
* Global definitions for the INET interface module.
*/

net/if.h 是用于相同目的的 glibc 文件,最初更侧重于用户空间

重要的是要注意,如果你打算同时使用两者(它们共享一些结构但不是全部),包含顺序非常重要,建议在大多数情况下包含 linux/if.hnet/if.h 之前。

关于c - linux/if.h 和 net/if.h 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20082433/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com