関数は、次のように呼び出します。
INTEGER*4 fgetc status = fgetc( lunit, char ) |
|||
lunit |
INTEGER*4 |
入力 |
論理装置 |
char |
character |
出力 |
次の文字 |
戻り値 |
INTEGER*4 |
出力 |
status=-1: ファイルの終了 status>0: システムエラーコードまたは f95 入出力エラーコード |
例: fgetc で tfgetc.data から文字を 1 文字ずつ読み取ります。改行 (8 進の 012) に注意してください。
character char INTEGER*4 fgetc, status open( unit=1, file='tfgetc.data' ) status = 0 do while ( status .eq. 0 ) status = fgetc( 1, char ) write(*, '(i3, o4.3)') status, char end do end |
前述のソースプログラムを (コンパイル後に) 実行した例を次に示します。
demo% cat tfgetc.data ab yz demo% a.out 0 141 'a' が読み取られる 0 142 'b' が読み取られる 0 012 改行が読み取られる 0 171 'y' が読み取られる 0 172 'z' が読み取られる 0 012 改行が読み取られる -1 012 CONTROL-D が読み取られる demo% |
どの論理装置に対しても、通常の Fortran の入力と fgetc() を混在して使用しないでください。
参照: getc(3S)、intro(2)、 および perror(3F)