错误:已弃用。

3
回答 另一个问题 时,我偶然发现了一个名为herror的函数的手册页。它看起来非常像perror,只是它打印与某个主机查找问题相关的错误。手册页指出,该函数已经“过时”。一个可以用来将错误号转换为字符串而不打印的函数hsterror也被标记为过时。
我没有看到任何迹象表明它们为什么过时,以及应该使用什么替代品。那么,在GNU libc linux系统上,将晦涩的h_errno错误号转换为用户可读的字符串的首选方法是什么?每个小应用程序都应该提供自己的翻译表,并希望可能出现的错误代码集不会很快改变吗?
1个回答

4
他们已经过时,因为gethostbyname*已经过时。应该使用getaddrinfo代替,并使用gai_strerror处理错误。
gethostbyname(3) man page中得到:

gethostbyname*()gethostbyaddr*()函数已经过时。应用程序应该使用getaddrinfo(3)getnameinfo(3)代替。


谢谢!那条消息似乎比我先读的那条要低调一些。如果有新手册的链接就太好了,但无论如何,我会在被允许后接受这个答案。 - MvG

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接