| ライブラリファイル |
含まれている関数 |
説明 |
戻り値 |
<stdio.h>
standard input output
主に入出力を扱うための関数が含まれている
|
printf(
"フォーマット文字列",
a,
b...
);
|
第1引数("フォーマット文字列")をコマンドプロンプトに表示
フォーマット指定子(%~)により、第2引数以降(a, b...)を表示可能
|
int
|
sprintf_s(
a,
sizeof(a),
"フォーマット文字列",
b,
c...
);
|
aにsizeof(a)(aの大きさ分)第3引数("フォーマット文字列")を代入
フォーマット指定子(%~)により、第4引数以降(b, c...)を代入可能
|
int
|
scanf(
"フォーマット文字列",
&a,
&b...
);
|
第1引数("フォーマット文字列")内の型(フォーマット指定子(%~)により指定可能)通りに入力を受け付け、第2引数以降の変数アドレス(&a, &b...)に文字列を代入(空白で区切られる)
※別の入力関数を一緒に使うとエラーの元になることがある
|
int
|
fgets(
char a,
sizeof(a),
f
);
|
aにsizeof(a)(aの大きさ分)fから読み込む
キーボード入力の場合 : fをstdinとする
|
char *
|
fopen(
"ファイルのパス",
"モード"
);
|
"ファイルのパス"のファイルを"モード"に従い開く
読み取り : r
バイナリ読み取り : rb
書き込み : w
バイナリ書き込み : wb
追記 : a
バイナリ追記 : ab
|
FILE *fp
|
fclose(FILE *fp);
|
fopen();で開いたファイルを閉じる
|
int
|
<stdlib.h>
standard library
汎用的に役立つ関数が含まれている
|
system("コマンド");
|
第一引数"コマンド"(OSのコマンド)を実行
|
int
|
atoi("文字列");
|
"文字列"をint型に変換
|
int
|
atof("文字列");
|
"文字列"をdouble型に変換
|
double
|
rand();
|
0からRAND_MAXまでの範囲の疑似乱数整数を生成
|
int
|
srand(unsigned int seed);
|
疑似乱数を生成するための開始点を設定
|
int
|
malloc(size_t size);
|
size[Byte]のメモリを確保(最大 16711568[Byte])
|
void *
|
calloc(
size_t size,
size_t type
);
|
type * size[Byte]のメモリを確保し、0で初期化 (最大 2147483424[Byte])
|
void *
|
realloc(
void *ptr,
size_t size
);
|
先頭アドレス*ptrから、size[Byte]のメモリを確保
|
void *
|
free(void *ptr);
|
指定したアドレス*ptrのメモリを解放
|
void *
|
exit(int status);
|
エラーコード : statusでプログラムを終了
|
|
abort();
|
プログラムを異常終了させる
|
|
qsort(
void *base,
sizeof(base)/sizeof(type),
size_t type,
int (*compare)(
const void *element1,
const void *element2
)
);
|
*baseが先頭アドレスの配列をクイックソートする
| 引数 |
説明 |
void *base
|
ソート対象配列の先頭アドレス |
size_t type
|
ソート対象配列の各要素のサイズ |
int (*compare)(
const void *element1,
const void *element2
)
|
比較基準関数 戻り値で大きさを決める
0より小さい → element2より、element1が小さい
0より大きい → element2より、element1が大きい
0 → element1とelement2は等しい
|
|
|
bsearch(
void *key,
void *base,
sizeof(base)/sizeof(key),
sizeof(key),
int (*compare)(
const void *element1,
const void *element2
)
);
|
qsort();等で事前にソートした配列から二分探索を行う
| 引数 |
説明 |
void *key
|
検索キーのアドレス |
void *base
|
探索対象配列の先頭アドレス |
int (*compare)(
const void *element1,
const void *element2
)
|
比較基準関数 戻り値で大きさを決める
0より小さい → element2より、element1が小さい
0より大きい → element2より、element1が大きい
0 → element1とelement2は等しい
|
|
void *
|
getenv("環境変数");
|
"環境変数"に対応する値が入ったアドレスを返す
|
char *
|
<string.h>
string
主に文字列操作に関する関数が含まれている
|
strcmp(
char *string1,
char *string2
);
|
文字列を比較
0より小さい → string2より、string1が小さい
0より大きい → string2より、string1が大きい
0 → string1とstring2は等しい
|
int
|
strstr(
char *string1,
char *string2
);
|
string1でstring2 が最初に現れる位置を検索
|
char *
|
strlen("文字列");
|
"文字列"の長さを取得
|
int
|
<math.h>
mathematics
主に数学的な計算を行うための関数が含まれている
|
sin(x);
|
y=sin(x) (正弦)のyを返す
|
double y
|
cos(x);
|
y=cos(x) (余弦)のyを返す
|
double y
|
tan(x);
|
y=tan(x) (正接)のyを返す
|
double y
|
asin(x);
|
y=arcsin(x) (逆正弦)の y[rad]を返す
|
double y
|
acos(x);
|
y=arccos(x) (逆余弦)の y[rad]を返す
|
double y
|
atan(x);
|
y=arctan(x) (逆正接)の y[rad]を返す
|
double y
|
atan2(a, b);
|
y=arctan(a/b) (逆正接)の y[rad]を返す
|
double y
|
exp(x);
|
y=exのyを返す
|
double y
|
log(x);
|
自然対数 y=ln(x) (= loge(x) )のyを返す
|
double y
|
log10(x);
|
常用対数 y=log10(x) のyを返す
|
double y
|
sqrt(x);
|
xの正の平方根を返す
|
double y
|
pow(x, y);
|
z=xyのzを返す
|
double z
|
fabs(x);
|
xの絶対値を返す
|
double y
|
ceil(x);
|
x以上の最小の整数値を返す(天井関数)
|
double y
|
floor(x);
|
x以下の最大の整数値を返す(床関数 ガウス記号)
|
double y
|
round(x);
|
xの小数点以下を四捨五入
|
double y
|
<ctype.h>
character type
主に文字の分類や変換を行うための関数が含まれている
|
islower(int c);
|
cが 英小文字以外:0 英小文字:非0 を返す
|
int
|
isupper(int c);
|
cが 英大文字以外:0 英大文字:非0 を返す
|
int
|
isdigit(int c);
|
cが 数字以外:0 数字:非0 を返す
|
int
|
tolower(int c);
|
cが大文字なら小文字 大文字以外はそのままにしたものを返す
|
int
|
toupper(int c);
|
cが小文字なら大文字 小文字以外はそのままにしたものを返す
|
int
|