アットウィキロゴ

stdio.h

printf
int printf(const char *format, ...)

printf( ... ) は fprintf(stdout, ... ) と同じ.

fprintf
int fprintf(FILE *stream, const char *format, ...)

出力フォーマット format に従って stream に出力する.出力した文字数を返す.エラーの場合は負の数を返す.

sprintf
int sprintf(char *s, const char *format, ...)

‘\0’を末尾に加えて文字列 s に書き出すこと以外は fprintf と同じ.返される文字数に‘\0’は含まない.

vprintf
int vprintf(const char *format, va_list arg)

可変な引数リストが arg で置き換えられている点を除けば printf と同じ.

vfprintf
int vfprintf(FILE *stream, const char *format, va_list arg)

可変な引数リストが arg で置き換えられている点を除けば fprintf と同じ.

vsprintf
int vsprintf(char *s, const char *format, va_list arg)

可変な引数リストが arg で置き換えられている点を除けば sprintf と同じ.

scanf
int scanf(const char *format, ...)

scanf( ... ) は fscanf(stdin, ... ) と同じである.

fscanf
int fscanf(FILE *stream, const char *format, ...)

出力フォーマット format に従って stream から読み込む.

sscanf
int sscanf(char *s, const char *format, ...)

入力文字列が文字列 s から取られる以外は scanf と同じ.

puts
int puts(const char *s)

文字列 s を標準出力に書き出す.

fputs
int fputs(int c, FILE *stream)

文字 c を stream に書き出す.失敗した場合は EOF を返す.

gets
char *gets(char *s)

入力された文字列を配列 s に読み込む.末尾の‘\n’は削除され,‘\0’が追加される.

fgets
char *fgets(char *s, int n, FILE *stream)

最大 n-1 文字を stream から読み込み,末尾の‘\n’は削除されず,最後に‘\0’が加えられる.正常時は s を返す.ファイルの終わりかエラー発生時は NULL を返す.

putchar
int putchar(int c)

文字 c を標準出力に書き出す.成功した場合は非負の数,失敗した場合は EOF を返す.

getchar
int getchar(void)

標準入力の次の文字を符号なし文字を返す.失敗した場合は EOF を返す.

fputc
int fputc(int c, FILE *stream)

文字 c を stream に書き出す.成功時は非負の数,失敗時は EOF を返す.

putc
int putc(int c, FILE *stream)

fputc と同じ.

fgetc
int fgetc(FILE *stream)

stream から 1文字読み込み,それを返す.失敗時は EOF を返す.

getc
int getc(FILE *stream)

fgetc と同じ.

ungetc
int ungetc(int c, FILE *stream)

c を unsigned int に変換して stream 出力する.出力した文字を返す.エラーの場合は EOF を返す.

fopen
FILE *fopen(const char *filename, const char *mode)

ファイル filename をオープンし,ストリームを返す.オープンできなかった場合は NULL を返す.

freopen
FILE *freopen(const char *filename, const char *mode, FILE *stream)

指定されたモードでファイル filename を再オープンしストリームを返す.エラーの場合は NULL を返す.

fclose
int fclose(FILE *stream)

stream で指定されたファイルをクローズする.正常時はゼロ,エラー時は非ゼロを返す.

fread
size_t fread(void *ptr, size_t size, size_t nobj, FILE *stream)

大きさ size のオブジェクト(最大 nobj 個)を stream から配列 ptr に読み込む.読み込まれたオブジェクトの数を返す.

fwrite
size_t fwrite(const void *ptr, size_t size, size_t nobj, FILE *stream)

大きさ size のオブジェクト(最大 nobj 個)を 配列 ptr から stream に書き出す.書き出されたオブジェクトの数を返す.

fseek
int fseek(FILE *stream, long offset, int origin)

stream に対してファイルの位置をセットする.バイナリファイルに対しては,origin(SEEK_SET: 始め,SEEK_CUR: 現在位置,SEEL_END: ファイルの終わり)から offset はなれたところにセットする.テキストファイルの場合,offset はゼロ,又は ftell (このとき origin は SEEK_SET のみ可)で返される値でなければならない.エラーの場合非ゼロを返す.

ftell
long ftell(FILE *stream)

stream に対する現在のファイル位置を返す.エラーのときは負の数を返す.

rewind
void rewind(FILE *stream)

rewind(fp) は fseek(fp, 0L, SEEK_SET) clearerr(fp) と同じ.

fgetpos
int fgetpos(FILE *stream, fpos_t *ptr)

stream 内の現在位置を,後で fsetpos で使うため,*ptr に記録する.型 fpos はそうした値を記録するためのものである.エラー時に非ゼロを返す.

fsetpos
int fgetpos(FILE *stream, const fpos_t *ptr)

前に fgetpos で得られた stream 内の現在位置を,*ptr にセットする. 型 fpos はそうした値を記録するためのものである.エラー時に非ゼロを返す.

fflush
int fflushs(FILE *stream)

出力ストリームに対して,未書き込みのバッファを書き出す.入力ストリームに対しての動作は不定.正常に書き込んだ場合はゼロ,エラーが発生した場合は NULL を返す.

remove
int remove(const char *filename)

まだ書き込まれていないデータを stream に書き出し,まだ読み込まれていないバッファ内の入力を捨て,自動的に割り当てられたバッファ内の入力を捨て,自動的に割り当てられたバッファをすべて開放し,ストリームをクローズする.エラーの場合はEOF,そうでないときは0を返す.

rename
int rename(const char *oldname, const char *newname)

ファイル名oldnameをnewnameに変更する.エラーが発生した場合,非ゼロを返す.

tmpfile
FILE *tmpfile(void)

一時ファイル(プログラム終了時に自動的に削除される.モードは"wb+")を作成する.エラーが発生したらNULL,そうでなければストリームを返す.

tmpnam
char *tmpnam(char s[L_tmpnam])

既存のファイル名でない文字列を作成する.

setvbuf
int setvbuf(FILE *stream, char *buf, int mode, size_t size)

ストリームに対するバッファリングを制御する.これは,読み,書き,その他,全ての操作の前に呼び出さなければならない.mode は _IOFBFでフルバッファリング,_IOLBFでテキストファイルの行バッファリング,_IONBFでバッファリングなし,となる.buf がバッファとして使われる(NULLの場合は割り当てられる).そのバッファの大きさは size である.エラーの場合,非ゼロを返す.

setbuf
void setbuf(FILE *stream, char *buf)

buf が NULL ならバッファリングオフ,そうでなければ (void)setvbuf(stream, buf, _IOFBF, BUFSIZE) と同様.

clearerr
void clearerr(FILE *stream)

stream に対する終端指示子,エラー指示子をクリアする.

feof
int feof(FILE *stream)

stream に対する終端指示子がセットされると,非ゼロを返す.

ferror
int ferror(FILE *stream)

stream に対するエラー指示子がセットされると,非ゼロを返す.

perror
void perror(const char *s)

fprintf(stderr, "%s: %s\n", s, error mmessage) と同じ.

ctype.h

isalnum
int isalnum(int c)

c がアルファベットか10進数なら真の値を返す.

isalpha
int isalpha(int c)

c がアルファベットなら真の値を返す.

iscntrl
int iscntrl(int c)

c が制御文字なら真の値を返す.

isdigit
int isdigit(int c)

c が10進数なら真の値を返す.

isgraph
int isgraph(int c)

c がスペース以外の印刷可能文字なら真の値を返す.

islower
int islower(int c)

c がアルファベットの小文字なら真の値を返す.

isupper
int isupper(int c)

c がアルファベットの大文字なら真の値を返す.

isprint
int isprint(int c)

c がスペースを含む印刷可能文字なら真の値を返す.

ispunct
int ispunct(int c)

c がスペース,英字,数字以外の印刷可能文字なら真の値を返す.

isspace
int isspace(int c)

c がスペース,改ページ,改行,復帰,タブ,垂直タブなら真の値を返す.

isxdigit
int ispunct(int c)

c が16進数なら真の値を返す.

tolower
int tolower(int c)

c の小文字を返す.

toupper
int toupper(int c)

c の大文字を返す.

string.h

strcpy
char *strcpy(char *s, const char *ct)

'\0'を含め,文字列 ct を s にコピーする.s を返す.

strncpy
char *strncpy(char *s, const char *ct, int n)

'\0'を含め,文字列 ct を 最大 n 文字 s にコピーする.s を返す.

strcat
char *strcat(char *s, const char *ct)

文字列 ct を s に連結する.s を返す.

strncat
char *strncat(char *s, const char *ct, int n)

文字列 ct を 最大 n 文字 s にコピーし,'\0' を加える.s を返す.

strcmp
int strcmp(const  char *cs, const char *ct)

文字列 cs と 文字列 ct を比較する.cs > ct なら 0より大きい数,cs < ct なら 0未満の数,等しければ 0 を返す.

strncmp
int strncmp(const char *cs, const char *ct, int)

文字列 cs と 文字列 ct の最大 n 字を比較する.cs > ct なら 0より大きい数,cs < ct なら 0未満の数,等しければ 0 を返す.

strchr
char *strchr(const char *cs, char c)

cs の中にある最初の c のポインタを返す.(なければ NULL を返す.)

strrchr
char *strrchr(const char *cs, char c)

cs の中にある最後の c のポインタを返す.(なければ NULL を返す.)

strcpn
size_t strspn(const char *cs, const char *ct)

ct に入っている文字からなる cs の接頭子の長さを返す.

strcspn
size_t strcspn(const char *cs, const char *ct)

ct に入っていない文字からなる cs の接頭子の長さを返す.

strpbrk
char *strpbrk(const char *cs, const char *ct)

文字列 ct の任意の文字が,文字列 cs の中で最初に現れる位置へのポインタを返す.(ない場合は NULL を返す.)

strstr
char *strstr(const char *cs, const char *ct)

cs 中で文字列 ct が最初に現れる位置へのポインタを返す.(ない場合は NULL を返す.)

strlen
size_t strlen(const char *cs)

文字列 cs の長さを返す.('\0'を含めない長さ)

seterror
char *strerror(int n)

エラー n に対応する(処理系で定義された)文字列へのポインタを返す.

strtok
char *strtok(char *s, const char ct)

ct からの文字によって区切られるトークンが s の中で探される.

memcpy
void *memcpy(char *s, const char *ct, int n)

ct の n 文字を s にコピーし,s を返す.

memmove
void *memmove(char *s, const char *ct, int n)

オブジェクトがオーバーラップしても動く点を除けば,memcpy と同じ.

memcmp
int memcmp(const char *cs, const char *ct, int n)

cs の最初の n 文字を ct と比較する.cs < ct なら 0より大きい数,cs > ct なら 0未満の数,等しければ 0 を返す.

memchr
void *memchr(const char *ct, char c, int n)

ct のなかで,c が最初に現れる位置へのポインタを返す.(n 字以内にない場合は NULL を返す.)

memset
void *memset(char *s, char c, int n)

s の最初の n 文字の中に,文字 c を入れる.s を返す.

math.h

ceil
double ceil(double x)

x より小さくない最小の整数を返す.

floor
double floor(double x)

x より大きくない最大の整数を返す.

fabs
double fabs(double x)

x の絶対値を返す.

exp
double exp(double x)

e の x 乗を返す.

ldexp
double ldexp(double x, int n)

x と 2 のn 乗 をかけた値を返す.

frexp
double frexp(double x, int *exp)

x を [1/2, 1] の範囲に正規化された小数部(戻り値)と2のベキ(*expに格納)に分割する.x がゼロならば,結果は両方ゼロである.

modf
double modf(double x, double *ip)

x をそれぞれ x と同じ符号を持つ整数部と小数部に分割する.整数部は *ip に格納し,小数部を返す.

fmod
double fmod(double x, double y)

x/y の浮動小数点余り.符号は x と同じ.(y = 0 のとき,結果は処理系依存)

log
double log(double x)

自然対数 ln(x) を返す.(x > 0)

log10
double log(double x)

基底10対数 log10(x) を返す.(x > 0)

pow
double pow(double x, double y)

x の y 乗 を返す.(x = 0 で y <= 0,または x < 0 で y が整数でないときはエラー.)

sqrt
double sqrt(double x)

x の 0.5 乗 を返す.

sin
double sin(double theta)

theataの正弦を返す.(theataの単位はラジアン)

asin
double asin(double x)

アークサインxを返す.

sinh
double sinh(double theta)

theataの双曲線正弦を返す.(theataの単位はラジアン)

cos
double cos(double theta)

theataの余弦を返す.(theataの単位はラジアン)

acos
double acos(double x)

アークコサインxを返す.

cosh
double cosh(double theta)

theataの双曲線余弦を返す.(theataの単位はラジアン)

tan
double tan(double theta)

theata の正接を返す.theata の単位はラジアンである.

atan
double atan(double x)

アークタンジェント x を返す.

atan2
double atan2(double y, double x)

アークタンジェント y / x を返す.

tanh
double tanh(double theta)

theta の双曲線正接を返す.theta の単位はラジアンである.

stdlib.h

rand
int rand(void)

範囲 0 ~ RAND_MAX の擬似乱数を返す.

srand
void srand(unsigned int seek)

rand の擬似乱数のシーケンスの開始点を seed で設定する.初期状態の seed は 1 である.

atoi
int atoi(const char *s)

s が表す int 型整数を返す.

atol
long atoi(const char *s)

s が表す long 型整数を返す.

atof
double atof(const char *s)

s が表す double 型整数を返す.

malloc
void *malloc(size_t size)

大きさが size のオブジェクトを入れるスペースのポインタを返す.失敗した場合は NULL を返す.

calloc
void *calloc(size_t nobj, size_t size)

それぞれの大きさが size である nobj 個のオブジェクトからなる配列を入れるためのスペースへのポインタを返す.失敗した場合は NULL を返す.

realloc
void *realloc(void *p, size_t size)

p によって示されるオブジェクトの大きさを size に変更する.失敗した場合は NULL を返す.

free
void free(void *p)

calloc,malloc,reallocで割り当てられたスペース p を解放する.p が NULL の場合は何も起こらない.

qsort
void qsort(void *base, size_t n, size_t size,
int (*cmp)(const void *, const void *))

大きさが size のオブジェクト配列 base[0] ~ base[n-1] を昇順にソートする.

abs
int abs(int n)

n の絶対値を返す.

labs
long abs(long n)

n の絶対値を返す.

div
div_t div(int num, int denom)

num / denom の商とあまりを求めるために使用される.結果は,型 div_t の構造体のメンバ,quot および rem に格納される.

ldiv
ldiv_t ldiv(long num, long denom)

div の long 版である.結果は,ldiv_t 型の構造体の long メンバである quot と rem に格納される.

exit
void exit(int status)

プログラムを正常終了する.atexit で登録された関数が逆の順序で呼ばれ,オープンされているファイルは閉じられ,オープンストリームは閉じられ,制御は環境に戻される.環境に対して status がどう返されるかは処理系によるが,ゼロは正常終了を表す.status には EXIT_SUCCESS や EXIT_FAILURE も使用できる.

abort
void abort(void)

raise(SIGABRT) と同じ.プログラムを異常終了する.

atexit
int atexit(void (*fcn)(void))

プログラムが正常終了したときに呼ばれる関数 fcn を登録する.

strtod
double strtod(const char *s, char **endp)

先頭の空白文字を無視して,s の接頭子を double 型に変換する.変換されなかった接尾子のポインタは *endp に格納される.endpがNULLの場合は,格納されない.答えがオーバーフローする場合は,HUGE_VAL が適当な符号とともに返される.答えがアンダーフローする場合は,ゼロを返す.いずれの場合も,errno が ERANGE にセットされる.

strtol
long strtol(const char *s, char **endp, int base)

先頭の空白文字を無視して,s の接頭子を long 型に変換する.変換されなかった接尾子のポインタは *endp に格納される.endp が NULL の場合は,格納されない.base がゼロならば,基数は 8 か 10 か 16 である.先頭に 0 があれば8進, 0x があれば 16 進である.英字は大文字と小文字も,10 から base-1 までの数を表す.基数 16 の場合は,先頭の 0x が許される.答えがオーバーフローする場合は,符号により LONG_MAX ,または LOGN_MIN が返される.その場合,errno が ERANGE にセットされる.

strtoul
unsigned long strtoul(const char *s, char **endp, int base)

unsigned long 版の strtol である.結果が unsigned long になり,エラー値がULONG_MAXになる.

system
int system(const char *s)

文字列 s を実行環境に渡す.s が NULL のときは,コマンドプロセッサがあれば,非ゼロを返す.s が NULL でないときは,戻り値は処理系に依存する.

getenv
char *getenv(const char *name)

name で表される環境文字列,あるいは文字列が存在しないときには,NULL を返す.その詳細は処理系依存である.

bsearch
void *bsearch(const void *key, const void *base, size_t n, size_t size,
int (*cmp)(const void *keyval, const void *datum))

base[0] ~ base[n-1] の中から *key に適合する項目を探す.関数cmp は,その最初の引数(検索キー)がその第 2 引数(表の項目)より小さいときには負の値,等しければゼロ,より大きいときにはせいの値を返すものでなければならない.また,配列 base 中の項目は昇順である必要がある.適合する項目がない,または適合した項目へのポインタがない場合は,NULL を返す.

time.h

time
time_t time(time_t *tp)

現在のカレンダー時間を返す.tp が NULL でない場合は *tp にも戻り値が割り当てられる.時間がわからない場合は -1 を返す.

clock
clock_t clock(void)

実行開始以来,プログラムで使われたプロセッサ時間(それがない場合は -1)を返す.clock() / CLOCKS_PER_SEC は実時間であり,単位は秒である.

difftime
double difftime(time_t time2, time_t time1)

time2 - time1 を返す.単位は秒.

mktime
time_t mktime(struct tm *tp)

構造体 *tp にあるローカル時間を,time によって使われるのと同じフォーマットのカレンダー時間に変換する.

asctime
char *asctime(const struct tm *tp)

構造体 *tp にある時間を "Sun Jan 3 15:14:13 1988\n" のような形の文字列に変換する.

ctime
char *ctime(const time_t *tp)

カレンダー時間 *tp をローカル時間に変換する.asctime(localtime(tp)) と同様である.

gmtime
struct tm *gmtime(const time_t *tp)

カレンダー時間を UTC に変換する.UTC が使えない場合は,NULL を返す.

localtime
struct tm *localtime(const time_t *tp)

カレンダー時間 *tp をローカル時間に変換する.

strftime
size_t strftime(char *s, size_t smax, const char *format, const struct tm *tp)

日付と時間の情報を *tp から format に従って書式化して s に入れる.

最終更新:2011年06月01日 20:32