■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50
プログラマが2chを救う!?
- 564 :デフォルトの名無しさん :01/08/26 16:56
- >'\0' を'*'に変換する処理
これって、いかにも付け焼刃的に「バグを見つけたのであとから付けました」って
感じがするんだよね。
というのは、直後で行数を数えるために全体をスキャンしているのに
同時に行っていないから。
全体をスキャンするのは1回にして、
ただし、全てを同時に行う。
やることは、
・行区切りの検索と位置保存
・'\0'の'*'への変換
・& -> & への 変換 … ただし、& は変換しない
(・@+`の変換 … そのレスは前に詰めなければいけない)
(・" ??)
つーかさ、Splitした結果をBigLineに持たせるべき。
struct lines {
char *name;
char *mail;
char *date;
char *text;
};
それと、機能追加?になるけどあった方が良いと思うのがさ、
オプションでのtext内部にある<br>以外のタグの削除ね。
要は>>nnがえらく転送量をふやしちゃうんだから、
<a href=...> と </a>のタグを無条件に削除するオプションがあってもいい。
ただ、BigBuffer内部で前詰めになるから、面倒くさいし、
各レスの先頭にタグが入っている場合が多いから、
実質memmoveの繰り返しになっちゃいそう。
それなるくらいなら、BigBufferの他にもう一つバッファを作って、
コピーしながら置換したほうがいいかもしれないけどね。
これなら、mmapとも併用できるでしょ。
231KB
新着レスの表示
スレッドリストへ戻る 全部 前100 次100 最新50
0ch BBS 2004-10-30