42Tokyo1の課題の一つ。関数get_next_lineを作成する。
関数get_next_lineをループで呼び出すと、ファイルディスクリプタのテキストをEOFまで
1行ずつEOFまで読むことができる。
GNLは「Get Next Line」の略。
- ファイルからテキストを読み込む
- 標準入力からテキスト読み込む
- #1: 読み出し用ファイル記述子
- #2: ファイルから読み込んだテキスト
- 1: 行が読み込まれた
- 0: EOFに到達
- -1: エラーが起きた
- "-D BUFFER_SIZE=xx" フラグ付きでコンパイルする必要がある。 この値は、get_next_lineのread関数呼び出しのバッファサイズとして使用される。 デフォルトは1024。
read, malloc, free
$ gcc -Wall -Wextra -Werror -D BUFFER_SIZE=1024 -o gnl get_next_line.c get_next_line_utils.c gnl_main.c
$ ./gnl