[JM:01093] 「man freeaddrinfo」のサンプルに関するミス?について。

Back to archive index

浅野 貴紀 asano****@yahoo*****
2015年 2月 10日 (火) 02:04:28 JST


はじめまして。浅野貴紀と言います。

本当に1バイトだけです^^。

端末で「man freeaddrinfo」とした場合にサンプルが表示されますが、
「
~省略~
       データグラムの echo サーバとクライアントである。
   サーバのプログラム
       #include <sys/types.h>
       #include <stdio.h>
       #include <stdlib.h>
       #include <unistd.h>
       #include <string.h>
       #include <sys/socket.h>
       #include <netdb.h>
       #define BUF_SIZE 500
       int
       main(int argc, char *argv[])
       {
           struct addrinfo hints;
           struct addrinfo *result, *rp;
           int sfd, s;
           struct sockaddr_storage peer_addr;
           socklen_t peer_addr_len;
           ssize_t nread;
           char buf[BUF_SIZE];
           if (argc != 2) {
               fprintf(stderr, "Usage: %s port\n", argv[0]);
               exit(EXIT_FAILURE);
           }
~省略~
」
の最後のif文について、条件式が、「if (argc != 2) {」となっていますが、
「if (argc != 3) {」の間違いではないかと思われるので、ご確認をよろしくお願いいたします。
たぶん、必要な引数を実行可能ファイルに渡してコードを動かそうとしても、動かなかった……と思う。
(発見したのが随分前のため、自信無いです……すみません。)

環境はCentOS7 x64です。

本来は英語版にもミスが無いかどうかなどを調べて、
間違いがある場合は、そちらにもメールを送るべきなのかもしれませんが、
Linux系は初めてなもので、まだ右も左も分から無いため、日本語部分だけで勘弁させて下さい。

よろしくお願い致します。





linuxjm-discuss メーリングリストの案内
Back to archive index