C言語

【何でも実装可能!?】C言語ライブラリ関数

自分の備忘録としてC言語のライブラリ関数まとめました。

C言語の簡単なプログラム

入出力 <stdio.h>



主にファイルを取り扱う関数です。

C言語では、ディスク以外の周辺機器もファイル扱いできます。

また、規定のファイルポインタとしてこれらを扱うことが出来ます。

規定のファイルポインタ

stdin 標準入力(普通はキーボード)

stdout 標準出力(普通はディスプレイ)

stderr 標準エラー出力(普通はディスプレイ)

これらは、リダイレクト等の方法でユーザーが変更することもできますし、

環境によっては、別の機器に関連づけられたり、無効になっていることもあります。

fopen

関数型 : FILE *fopen(const char *filename, const char *mode);

引数  : ファイル名、モード文字列

戻り値 : 開いたファイルポインタ。失敗した場合はNULL。

機能  : ファイルを開く。

モード : r 読み込み、w 新規、a 追加。b付加でバイナリ、+付加で入出力両用。

fclose

関数型 : int fclose(FILE *fp);

引数  : ファイルポインタ

戻り値 : 成功した場合は0、失敗したときはEOF

機能  : ファイルを閉じる。

fgetc

関数型 : int fgetc(FILE *fp);

引数  : ファイルポインタ

戻り値 : 読み出した文字。失敗したか終わりに到達した場合はEOF。

機能  : ファイルから1文字読み出す。

getc

機能  : fgetcと全く同じ。

注意  : マクロになっていることがあるので副作用に注意。

fgets

関数型 : char *fgets(char *s, int n, FILE *fp);

引数  : 文字列を格納するバッファ、バッファサイズ、ファイルポインタ

戻り値 : 引数で指定したバッファ。失敗したか終わりに到達した場合はNULL。

機能  : ファイルから1行読み出す。結果に改行を含む。

fputc

関数型 : int fputc(int c, FILE *fp);

引数  : 文字、ファイルポインタ

戻り値 : 出力文字。失敗したときはEOF。

機能  : ファイルに1文字書き込む。



putc

機能  : fputcと全く同じ。

注意  : マクロになっていることがあるので副作用に注意。

fputs

関数型 : int fputs(const char *s, FILE *fp);

引数  : 文字列、ファイルポインタ

戻り値 : 成功した場合は真、失敗したときはEOF。

機能  : ファイルに文字列を書き込む。

fread

関数型 : size_t fread(void *ptr, size_t size, size_t nelem, FILE *fp);

引数  : 読み込み結果を格納するバッファ、1項目のサイズ、項目数、ファイルポインタ

戻り値 : 読み込んだ項目数。失敗した場合は0。

機能  : ファイルから固定サイズの項目を読み込む。

fwrite

関数型 : size_t fwrite(const void *ptr, size_t size, size_t nelem, FILE *fp);

引数  : 書き込むバッファ、1項目のサイズ、項目数、ファイルポインタ

戻り値 : 書き込んだ項目数。失敗した場合は0。

機能  : ファイルに固定サイズの項目を書き込む。

fprintf

関数型 : int fprintf(FILE *fp, const char *format, …);

引数  : ファイルポインタ、書式付き文字列、可変個の変数

戻り値 : 出力文字数。失敗したときは負の値。

機能  : ファイルに書式付き文字列を書き込む。

fscanf

関数型 : int fscanf(FILE *fp, const char *format, …);

引数  : ファイルポインタ、変換指定文字列、可変個のバッファ

戻り値 : 変換に成功した数。失敗した場合は-1。

機能  : ファイルから文字列を読み込み指定された形式に変換する。

ftell

関数型 : long ftell(FILE *fp);

引数  : ファイルポインタ

戻り値 : 現在のファイル位置。

機能  : ファイル位置を取得する。

fseek

関数型 : int fseek(FILE *fp, long offset, int ptrname);

引数  : ファイルポインタ、ファイル位置の移動数、ファイル位置の基準

戻り値 : 成功した場合は0、失敗したときは0以外。

機能  : ファイル位置を変更する。

位置  : SEEK_SET 先頭、SEEK_CUR 現在の位置、SEEK_END 終わり。

fgetpos

関数型 : int fgetpos(FILE *fp, fpos_t *ptr);

引数  : ファイルポインタ、ファイル位置を格納する変数のポインタ

戻り値 : 成功した場合は0、失敗したときは0以外。

機能  : 現在のファイル位置を格納する。

fsetpos

関数型 : int fsetpos(FILE *fp, const fpos_t *ptr);

引数  : ファイルポインタ、ファイル位置を格納する変数のポインタ

戻り値 : 成功した場合は0、失敗したときは0以外。

機能  : ファイル位置を変更する。

feof

関数型 : int feof(FILE *fp);

引数  : ファイルポインタ

戻り値 : 終わりに到達した場合は真、到達していない場合は偽。

機能  : ファイルが終わりに到達したか調べる。



ferror

関数型 : int ferror(FILE *fp);

引数  : ファイルポインタ

戻り値 : エラー発生した場合は真、発生していない時は偽。

機能  : ファイルにエラーが発生したか調べる。

clearerr

関数型 : void clearerr(FILE *fp);

引数  : ファイルポインタ

機能  : ファイルのエラーの時に回復する。

fflush

関数型 : int fflush(FILE *fp);

引数  : ファイルポインタ

戻り値 : 成功した場合は0、失敗したときは偽。

機能  : 出力バッファを強制出力する。

注意  : コンパイラによっては入力バッファをクリアできる。ただし邪道である。

freopen

関数型 : FILE *freopen(const char *filename, const char *mode, FILE *fp);

引数  : ファイル名、モード文字列、ファイルポインタ

戻り値 : 引数で指定されたファイルポインタ。失敗した場合はNULL。

機能  : ファイルポインタの再割り当て。

rename

関数型 : int rename(const char *oldname, const char *newname);

引数  : 現在のファイル名、新しいファイル名

戻り値 : 成功した場合は0、失敗したときは0以外。

機能  : ファイルの名前を変更する。

remove

関数型 : int remove(const char *filename);

引数  : ファイル名

戻り値 : 成功した場合は0、失敗したときは0以外。

機能  : ファイルを削除する。

getchar

関数型 : int getchar(void);

戻り値 : 読み出した文字。失敗した場合はEOF。

機能  : 標準入力(キーボード)から1文字読み込む。

putchar

関数型 : int putchar(char c);

引数  : 文字

戻り値 : 出力文字。失敗したときはEOF。

機能  : 標準出力(ディスプレイ)に1文字書き込む。

gets

関数型 : char *gets(char *s);

引数  : 読み込んだ文字列を格納するバッファ

戻り値 : 引数で指定したバッファ。失敗したか終わりに到達した場合はNULL。

機能  : 標準入力(キーボード)から1行読み出す。結果に改行は含まれない。

注意  : バッファオーバーラン(ウイルス侵入)の原因になるので使ってはいけない。

puts

関数型 : int puts(const char *s);

引数  : 文字列

戻り値 : 成功した場合は0、失敗したときは0以外。

機能  : 標準出力(ディスプレイ)に1行書き込む。改行されます。

perror

関数型 : void perror(const char *s);

引数  : 表示する文字列

機能  : 指定した文字列と一緒に直前に発生したエラーを表示する。

printf

関数型 : int printf(const char *format, …);

引数  : 書式付き文字列、可変個の変数

戻り値 : 出力文字数。失敗したときは-1。

機能  : 標準出力(ディスプレイ)に書式付き文字列を書き込む。

scanf

関数型 : int scanf(const char *format, …);

引数  : 変換指定文字列、可変個のバッファ

戻り値 : 変換に成功した数。失敗した場合は-1。

機能  : 標準入力(キーボード)から文字列を読み込み指定された形式に変換する。

注意  : 他の入力関数と一緒に使うと思わぬ動作をすることがある。

1 2 3 4 5 6 7