2012-08-06 2 views
3

another question 응답 herror이라는 기능이있는 man page이 발생했습니다. perror과 매우 비슷해 보이지만 일부 호스트 조회 문제와 관련된 오류가 표시됩니다. 설명서 페이지는이 기능이 "쓸모 없다"고 말합니다. 오류 번호를 인쇄하지 않고 문자열로 변환하는 데 사용할 수있는 hsterror 함수는 더 이상 사용되지 않는 것으로 표시됩니다.herror가 사용되지 않음

은 내가 볼 수없는 것은 어떤 이유 그들 중 하나가 사용되지 않습니다에 관한 표시, 어떤 대신 사용되어야한다 를 대체합니다. 그렇다면 불분명 한 h_errno 오류 번호를 GNU libc linux 시스템에서 사용자가 읽을 수있는 문자열로 변환하는 가장 좋은 방법은 무엇입니까? 모든 작은 응용 프로그램이 자체의 번역 테이블을 제공해야하며 가능한 오류 코드 집합이 곧 바뀌지 않기를 바랍니다.

답변

4

gethostbyname*은 더 이상 사용되지 않으므로 더 이상 사용되지 않습니다. 대신 getaddrinfo을 사용하고 오류로 gai_strerror을 사용하십시오.

gethostbyname(3) man page에서

:

경우 gethostbyname *()와 gethostbyaddr를의 *는() 함수가 사용되지 않습니다. 응용 프로그램은 대신 getaddrinfo(3)getnameinfo(3)을 사용해야합니다.

+0

고마워요! 그 메시지는 제가 처음 읽은 것보다 조금 덜 발음됩니다. 새 맨 페이지에 대한 링크는 훌륭하지만 어느 경우이든 허용되면이 대답을 받아 들일 것입니다. – MvG

+0

@MvG : 대단히 반갑습니다. 링크가 추가되었습니다. 문안 인사 – jxh

관련 문제