Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ linux的gethostbyname函数的独立源代码_C++_Linux_Dns - Fatal编程技术网

C++ linux的gethostbyname函数的独立源代码

C++ linux的gethostbyname函数的独立源代码,c++,linux,dns,C++,Linux,Dns,在哪里可以获得gethostbyname的源代码,它可以在不链接其他linux库(仅套接字)的情况下使用 我发现: 但这不起作用,解析时出错 谢谢 DNS解析非常复杂。为什么不用图书馆?当我需要c-ares时,我会使用它 如果您不想将其用作库,您可以将其所有源代码文件直接塞进您的项目中,尽管这会很奇怪。DNS解析很复杂。为什么不用图书馆?当我需要c-ares时,我会使用它 如果您不想将其用作库,您可以将其所有源代码文件直接填充到您的项目中,尽管这会很奇怪。gethostbyname一点都不简单

在哪里可以获得
gethostbyname
的源代码,它可以在不链接其他linux库(仅套接字)的情况下使用

我发现:

但这不起作用,解析时出错


谢谢

DNS解析非常复杂。为什么不用图书馆?当我需要c-ares时,我会使用它


如果您不想将其用作库,您可以将其所有源代码文件直接塞进您的项目中,尽管这会很奇怪。

DNS解析很复杂。为什么不用图书馆?当我需要c-ares时,我会使用它


如果您不想将其用作库,您可以将其所有源代码文件直接填充到您的项目中,尽管这会很奇怪。

gethostbyname
一点都不简单,因为它必须找出这些数据的当前配置源(本地文件、NIS、NIS+、DNS,可能还有其他),为了在那里进行搜索,如果对每个文件的查找都失败了,该怎么办(
nsswitch.conf(5)
等),并进行查找和错误的簿记和缓存。

gethostbyname
一点也不简单,因为它必须找出这些数据当前配置的源是什么(本地文件,NIS,NIS+,DNS,可能还有其他),为了在那里搜索,如果每个文件的查找都失败了该怎么办(
nsswitch.conf(5)
等),并进行查找和其他簿记和缓存。

“单个.c文件中的非阻塞DNS解析程序库。支持存根和递归模式。”

“单个.c文件中的非阻塞DNS解析程序库。支持存根模式和递归模式。”


请记住,对于套接字和其他功能,您仍然必须与标准库链接,因此,当标准库包含主机名解析时,为什么不使用它?还请记住,默认情况下,标准库是动态链接的,因此不会使用磁盘上的额外空间。不使用标准库的唯一原因是his将位于空间严重受限的嵌入式系统中,这样您就不会使用GNU libc,但
gethostname
可能仍在标准库中。请记住,对于套接字和其他函数,您仍然必须与标准库链接,因此当标准库包含主机名解析时n为什么不使用它?还请记住,默认情况下,标准库是动态链接的,因此不会使用磁盘上的额外空间。不使用标准库的唯一原因是在空间严重受限的嵌入式系统中,然后您无论如何都不会使用GNU libc,但
gethostname
仍可能是be在标准库中。