1.5 ライブラリ
1.5.2 Cライブラリ
1.5.2.2 Cライブラリのインタフェースについての説明
1.5.2.2 Cライブラリのインタフェースについての説明
_toupper
#include <ctype.h>
int _toupper( int c );
cを大文字に変換します。ただし、cが実際に小文字になっているかどうかはチェックしません。これは 非ANSI関数です。
戻り値 変換された文字。
_write
#include <stdio.h>
size_t _write( FILE *iop, char *base, size_t size );
低レベルブロック出力関数。この関数は、使用する前にカスタマイズしなければなりません。カスタマ イズされていない場合、この関数は̲iowriteを使用します。この関数は、すべての出力関数によって使用 されるもので、指定されたストリームに文字のブロックを書き込みます。
戻り値 正常に書き込まれた文字の数。
abort
#include <stdlib.h>
void abort( void );
プログラムを異常終了させます。スタートアップモジュールで定義されている関数_exitを呼び出し ます。
戻り値 なし。
abs
#include <stdlib.h>
int abs( int n );
戻り値 signed int引数の絶対値。
asctime
#include <time.h>
char *asctime ( const struct tm *tp );
構造体*tpの時間を、以下の形式の文字列に変換します。
Mon Jan 21 16:15:14 1989¥n¥0 戻り値 文字列形式の時間。
assert
#include <assert.h>
void assert( int expr );
NDEBUGを付けてコンパイルした場合、これは空のマクロになります。NDEBUGを定義しないでコンパ イルした場合、exprが真かどうかチェックします。真の場合、次のような行がプリントされます。
"Assertion failed: expression, file filename, line num"
戻り値 なし。
atexit
#include <stdlib.h>
int atexit( void (*fcn)( void) );
プログラムが正常に終了するときに、関数fcnが呼び出されるよう登録します。
戻り値 プログラムが正常に終了したとき、0。
登録ができない場合、0以外の値。
atoi
#include <stdlib.h>
int atoi( const char *s );
指定された文字列をint値に変換します。スペースは無視されます。変換は、認識できない文字が見つ かった段階で停止します。
戻り値 int値。
atol
#include <stdlib.h>
long atol( const char *s );
指定された文字列をlong値に変換します。スペースは無視されます。変換は、認識できない文字が見つ かった段階で停止します。
戻り値 long値。
bsearch
#include <stdlib.h>
void *bsearch( const void *key, const void *base, size_t n, size_t size, int (* cmp) (const void *, const void *) );
この関数は、n個のメンバーの配列内で、ptrでポイントされているオブジェクトを検索します。配列 の最初の基底は、baseで指定されます。それぞれのメンバーのサイズは、sizeで指定されます。指定 する配列は、cmpがポイントする関数の結果に従って、昇順にソートされなければなりません。
戻り値 配列内で一致するメンバーを示すポインタ。見つからなかった場合はNULL。
calloc
#include <stdlib.h>
void *calloc( size_t nobj, size_t size );
割り当てられた空間が0で埋められます。割り当てられる最大空間は、ヒープサイズをカスタマイズす ることで変更できます("1.3.5 ヒープ"を参照)。デフォルトの場合、ヒープは割り当てられません。ヒー プが定義されていないときに"calloc()"が使用されると、ロケータがエラーを出します。
戻り値 sizeバイトの長さのnobj個の項目に割り当てた外部メモリの空間を示すポインタ。十分な
空間が残っていない場合はNULL。
clearerr
#include <stdio.h>
void clearerr( FILE *stream );
ファイルの終了とストリームのエラーインジケータをクリアします。
戻り値 なし。
clock
#include <time.h>
clock_t clock( void );
使用されたプロセッサ時間を判別します。
戻り値 1
ctime
#include <time.h>
char *ctime( const time_t :tp );
カレンダー時間*tpを、ローカル時刻に文字列形式で変換します。この関数は、次の関数と同じです。
asctime( localtime( tp ) );
戻り値 文字列形式のローカル時刻。
div
#include <stdlib.h>
div_t div( int num, int denom );
両方の引数が整数値になります。返される商と余りも整数値になります。
戻り値 numをdenomで割ったときの商と余りを含む構造体。
exit
#include <stdlib.h>
void exit( int status );
プログラムを正常終了させます。"main( )"が戻り値としてstatusを返す状況と同様の動作をします。
戻り値 正常終了した場合、0。
fclose
#include <stdio.h>
int fclose( FILE *stream );
streamに書き込まれていないデータがあればフラッシュして、読み込まれていないバッファ入力を廃 棄し、自動的に割り当てられていないバッファがあればそれを解放して、最後にstreamをクローズし ます。
戻り値 streamが正しくクローズできれば0、エラーが発生すればEOF。
feof
#include <stdio.h>
int feof( FILE *stream );
戻り値 streamのファイル終了(EOF)インジケータがセットされていれば、0以外の値。
ferror
#include <stdio.h>
int ferror( FILE *stream );
戻り値 streamのエラーインジケータがセットされていれば、0以外の値。
fflush
#include <stdio.h>
int fflush( FILE *stream );
streamが出力ストリームの場合、バッファされていて記述されていないデータがあれば、それを書き 込みます。streamが入力ストリームの場合、その影響は定義されていません。
戻り値 正常に完了すれば0、書き込みエラーの場合はEOF。
fgetc
#include <stdio.h>
int fgetc( FILE *stream );
指定されたストリームから1文字読み込みます。
戻り値 読み込んだ文字。エラーの場合はEOF。
fgetpos
#include <stdio.h>
int fgetpos( FILE *stream, fpos_t *ptr );
streamによってポイントされているストリームのファイル位置インジケータの現在の値を、ptrによっ てポイントされているオブジェクトに格納します。このような値を記録するには、fpos_t型が適して います。
戻り値 正常に完了すれば0、エラーの場合は0以外の値。
fgets
#include <stdio.h>
char *fgets( char *s, int n, FILE *stream );
指定されたストリームから配列sへ、それ以降の文字を最大n-1個読み込みます。改行文字が現れた時点 で読み込みを終了します。
戻り値 s。EOFまたはエラーの場合はNULL。
fopen
#include <stdio.h>
FILE *fopen( const char *filename, const char *mode );
指定されたmodeでファイルをオープンします。
戻り値 ストリーム。ファイルがオープンできない場合、NULLが返されます。
modeには、以下の値を指定することができます。
"r" 読み込み。テキストファイルを読み込みモードでオープンします。
"w" 書き込み。テキストファイルを書き込みモードで作成します。指定されたファイルがすでに存在 している場合、その内容が破棄されます。
"a" 追加。既存のテキストファイルをオープンするか、新しいテキストファイルを作成し、ファイル 終了地点から書き込みを始めます。
"r+" テキストファイルをオープンし更新します。つまり読み込みと書き込みを行います。
"w+" テキストファイルを作成し更新します。同じ名前のファイルがすでにあれば破棄されます。
"a+" 追加。テキストファイルをオープンまたは作成し更新します。ファイル終了地点から書き込みを 始めます。
更新モード("+")では、同じファイルに対して読み込みと書き込みを行います。このモードでは、読み 込みしてから書き込みするまでの間または書き込みしてから読み込みするまでの間に、関数fflushが呼び 出されます。最初の文字のあとに文字bを入れることで、ファイルがバイナリファイルであることを指 定できます。たとえば、"rb"とするとバイナリの読み込みになり、"w+b"とするとバイナリファイルを作 成して更新することになります。ファイル名は、FILENAME̲MAX個の文字数に制限されます。また、
最大FOPEN̲MAX個のファイルを同時にオープンすることができます。
fprintf
#include <stdio.h>
int fprintf( FILE *stream, const char *format, ... );
指定されたストリームに、一定の書式で書き込みを行います。"printf()"、"̲iowrite()"の説明の他、