ネットワークプログラミング相談室 Port21at TECHネットワークプログラミング相談室 Port21 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト50:デフォルトの名無しさん 08/03/26 10:19:15 ありだと思うけど、\r\nを返さないサーバもあるから気を付けてね。 51:デフォルトの名無しさん 08/03/26 10:23:39 一応ソースコードです。改行制限キツイですね。 // 1行読み取り,改行を含む長さを返す,バッファに入りきらない場合はnul終端文字列の長さ int readline(int sd, char *buf, int bufsize) { int rlen = 0, wlen = 0, cr = 0; char ch; for (;;) { int r = recv( sd, &ch, 1, 0 ) ; if (r < 0) { fprintf(stderr,"readline:error r < 0\n"); return r; } else if(!r) { fprintf(stderr,"readline:warning !r\n"); break ; } if (ch == '\n') { if (!cr) fprintf(stderr,"readline:warning !cr\n"); if (rlen < bufsize) buf[wlen++] = ch; rlen++; break; } else { cr = (ch == '\r') ? 1 : 0; if (rlen < bufsize) buf[wlen++] = ch; rlen++; } } if (wlen>=bufsize) wlen--; // nul終端文字列になるように調節 buf[wlen] = 0; return wlen; } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch