標準Cライブラリ

標準Cライブラリの關數の仕樣を出來るだけ詳しく解説。完璧に解説してゐる譯では有りません。順次追加してゆきます。

概要

ヨシ介が、標準Cライブラリの關數の仕樣を知つてゐる限り書くものです。「標準Cライブラリとは何か」については、省略します。

「恐らく」付きの説明は、確かでないものです。何れ實驗して結果を書きます。

標準Cライブラリヘッダ別解説(順不同)

標準入出力(stdio.h)

FILE
ファイル操作の爲のオブジェクト型(構造體であるとは限らない)。データ轉送用バッファや、バッファサイズ、ポインタの位置等を格納する。
fpos_t型
ファイルのシーク位置を格納するオブジェクト型(何型が割り當てられるかは處理系定義)。
FOPEN_MAX(オブジェクト形式マクロ)
一度にオープン出來るファイルの總數。處理系によつて値は異なる。
stdin, stdout, stderr(標準入力・標準出力・標準エラー出力)
標準のストリーム。各々がどの周邊機器に割り當てられてゐるかは、OSによつて違ふ。因みに、ヨシ介の處理系では、マクロで定義されてゐた。
int printf(char *__format, ...);
書式付きで標準出力に出力。戻り値は、出力に成功した文字數。
int fprintf(FILE *__stream, char *__format, ...);
書式付きで__streamに出力。戻り値は、出力に成功した文字數。
void clearerror(FILE *__stream);
ファイル終端表示子・エラー表示子のクリア
int fclose(FILE *__stream);
__streamと、__streamに結び付けられたファイルを切り離して、ファイルをクローズする。戻り値は、不明(恐らく、クローズの成功・失敗)。
int feof(FILE *__stream);
__streamと結び付けられたファイルの終端を檢知する。戻り値は、終端だつたか、さうでなかつたか。
int fflush(FILE *__stream);
__streamのバッファをフラッシュする。バッファに溜め込まれてゐたデータは、全て結び付けられてゐるファイル・機器に轉送される。戻り値は、不明(恐らく、フラッシュの成功の是非)。
int fgetc(FILE *__stream);
__streamと結び付けられたファイル・機器等から一文字讀み込む。戻り値は、讀み込んだデータ。
int fgetpos(FILE *__stream, fpos_t *__pos);
ストリームから、ファイル位置表示子の參照。戻り値は、恐らく參照した値。
char *fgets(char *__s, int __n, FILE *format);
ストリームから、__sに、最大__n文字讀み込む。戻り値は、恐らく__sへのポインタ。
FILE *fopen(const char *__path, cons char *__mode);
__pathで表されたファイルを、__modeで表されたモードに從つて、オープンする。戻り値は、FILE型。
int fputc(int __c, FILE *__stream);
ストリームに、__cを書き込む。戻り値は、__c。
int fputs(const char *__s, FILE *__stream);
ストリームに、__sを書き込む。戻り値は、恐らく出力した文字數。
_SIZE_T fread(void *__ptr, _SIZE_T __size, _SIZE_T __n, FILE *stream);
_SIZE_T型はsize_t型に同じ。ストリームから、__ptrに、__size個のデータ__n個を讀み込む。戻り値は、不明(恐らく、讀み込んだデータサイズ)。
int fscanf(FILE *__stream, const char *__format, ...)
ストリームから、書式付きで讀み込む。戻り値は、讀み込んだデータの個數。
int fseek(FILE *__stream, long __offset, int __whence);
ファイル位置表示子の変更。戻り値は、不明(恐らく位置表示子のシーク量)。
int fsetpos(FILE *__stream, const fpos_t *__pos)
ファイル位置表示子の設定。戻り値は、不明。
long ftell(FILE *__stream);
不明。__streamが指すストリームに對應する其の時のファイル位置表示子の値を得る。戻り値は、ファイル位置表示子の値。失敗した場合は、-1L。
_SIZE_T fwrite(const void *__ptr, _SIZE_T __size, _SIZE_T __n, FILE *stream);
ストリームに、__ptrから、一つ__size個の要素を、__n個書き込む。戻り値は、不明(恐らく、出力に成功したデータサイズ)。
char *gets(char *__s);
標準入力から、__sに文字列を讀み込む。戻り値は、恐らく__sへのポインタ。
void perror(const char *__s);
標準エラーストリームへの、文字列の出力。戻り値は、無し。
int puts(const char *__s);
標準出力ストリームへの、文字列の出力。戻り値は、恐らく出力に成功した文字數。
int remove(const char *__path)
__pathで表されたファイルの削除。戻り値は、恐らく削除に成功したかの是非。
int rename(const char *__oldname, const char *__newname);
__oldnameのファイルの名前を、__newnameに變更する。戻り値は、恐らくリネームに成功したかの是非。
void rewind(FILE *__stream);
ストリームの卷き戻し。(?)
int scanf(const char *__format, ...);
標準入力から、書式付きで讀み込む。戻り値は、讀み込んだデータの個數。
void setbuf(FILE *__stream, char *__buf);
ストリームのバッファの設定變更。
int setvbuf(FILE *__stream, char *__buf, int __type, _SIZE_T size);
ストリームのバッファの詳細設定變更。
int sprintf(char *__buf, const char *__format, ...);
__bufに書式付きで出力する。戻り値は、出力に成功した文字數。
int sscanf(const char *__buf, const char *__format, ...);
__bufから書式付きで讀み込む。戻り値は、讀み込んだデータの個數。
FILE *tmpfile(void);
テンポラリファイルをバイナリモードでオープン。
char *tmpnam(char *__s);
テンポラリファイル名の生成。
int vprintf(const char *__format, void *__arglist);
標準出力に、書式付きで出力。(va_listを使用。)
int vscanf(const char *__format, void *__arglist);
標準入力から、書式付きで讀み込む。(va_listを使用。)
int getc(FILE *__fp);
ストリームから一文字入力。fgetcと等價。戻り値は、入力されたデータ。
int getchar(void);
標準入力から一文字入力。getc(stdin)と等價。戻り値は、入力されたデータ。
int putchar(const int __c);
標準出力に一文字出力。putc(__c, stdout)と等價。戻り値は、__c。
int putc(const int __c, FILE *__fp);
ストリームに一文字出力。fputcと等價。戻り値は、__c。

文字列操作(string.h)

標準關數(stdlib.h)

時間(time.h)

定義(stddef.h)

可變個引數(stdarg.h)

數學(math.h)

文字操作(ctype.h)

整數型の容量(limits.h)

浮動少數點數の特性(float.h)

エラー(errno.h)

文化圈固有操作(locale.h)

診斷(assert.h)

非局所分岐(setjmp.h)

シグナル(signal.h)