多かれ少なかれ、タイトルに書かれていること。次のように getaddrinfo を呼び出しています。
struct addrinfo crossplat, *actual_addr;
crossplat.ai_family = AF_UNSPEC; //IPv4 or IPv6.
crossplat.ai_socktype = SOCK_STREAM;
if(int i = getaddrinfo("localhost", "8000", &crossplat, &actual_addr)!=0){
cerr << "error code " << i << " received. Meaning: "<< gai_strerror(i) << endl;
return -1;
}
誇らしげに印刷します:
error code 1 received. Meaning: Unknown error
私のシステムで。
私のシステムの getaddrinfo man ページ:
RETURN VALUE
getaddrinfo() returns 0 if it succeeds, or one of the following
nonzero error codes:
EAI_ADDRFAMILY....
...The gai_strerror() function translates these error codes to a
human readable string, suitable for error reporting.
これは、getaddrinfo によって返されるすべてのゼロ以外のコードが、リストされている EAI_* ファミリ コードの 1 つである必要があることを示唆しています。オンラインで検索すると、gai_strerror() は、EAI_* ファミリーのメンバーではないエラー コードが渡された場合にのみ「不明なエラー」を返すことが示唆されています。
どうやら私はここで何か間違ったことをしているようですので、どんな支援も大歓迎です!