C言語　標準関数　リスト(基礎)

#はじめに
　この記事はIT分野について1から学び始めて9か月程度の学生が、C言語の標準関数について自分なりにまとめたものです。
　学習しているときに、以前使った標準関数も忘れてしまっていることがあったので一度リストしてみました。また、調べる中で自分なりに覚えておきたいと思ったものは、初めて知った関数もリストに加えました。
##stdio.h
standardI/O(標準入出力)の略で、入出力に関する標準関数が多い

__標準入出力__
・int printf(const char*)　
　　標準出力へ出力する
・int scanf(const char*)　
　　標準入力から入力する
・int puts(const char*)
　　標準出力へ1行で出力する(最後に自動的に改行される)

__ファイル操作__
・FILE *fopen(const char*,const char*)　
　　1つ目の引数で指定されたファイルを2つ目で指定されたファイルモードで開く
・int fclose(FILE*)
　　引数で指定されたファイルポインタで示されたファイルを閉じる
・int fprintf(FILE*,const char*)
　　ファイルへ出力する
・int fscanf(FILE*,const char*)
　　ファイルから入力する
・int fputs(const char*,FILE*)
　　1つ目の引数で与えられた文字列を2つ目の引数で指定したファイルポインタが示すファイルに出力する
・char *fgets(char*,int,FILE*)
　　3つ目の引数で指定したファイルポインタが示すファイルから、1つ目で指定したchar型配列に入力する(2つ目の引数は最大文字列長)

__文字列からの入出力__
・int sprintf(char*,const char*)
　　2つ目の引数のフォーマットに従って、文字列を1つ目の引数に出力(代入)する
・int sscanf(const char*,const char*)
　　2つ目の引数のフォーマットの従って、1つ目の引数の文字列から入力する

##stdlib.h
standard library(標準ライブラリ)の略で、汎用性の高いものが多い

__メモリ領域__
・void *malloc(size_t)
　　引数で指定したサイズの領域を確保する
・void *calloc(size_t,size_t)
　　2つ目の引数で指定したサイズの領域を、1つ目の引数で指定した個数分だけ確保する
・void free(void *)
　　確保した領域を解放する

__乱数__
・void srand(unsigned int)
　　引数(例：time)を用いて乱数表を作成する
・int rand(void)
　　疑似乱数を返す(0～RAND_MAXの値。RAND_MAXはstdlib.hの中でdefineされている)

__文字列→数値__
・int atoi(const char*)
　　文字列をint型に変換する
・long atol(const char*)
　　文字列をlong型の変換する
・double atof(const char*)
　　文字列をdouble型に変換する

__絶対値(整数)__
・int abs(int)
　　引数の絶対値を返す

##string.h
string(文字列)に関する標準関数が含まれる

__文字列のコピー__
・char *strcpy(char*,const char*)
　　2つ目の引数に指定した文字列を1つ目の引数に指定した文字列に複製する
・char *strncpy(char*,const char*,size_t)
　　先頭から3つ目の引数で指定した文字数分だけを、2つ目の引数で指定した文字列を1つ目の引数に指定した文字列に複製する

__文字列の連結__
・char *strcat(char*,const char*)
　　2つ目の引数に指定した文字列を1つ目の引数に指定した文字列の後ろに連結する
・char *strncat(char*,const char*,size_t)
　　3つ目の引数で指定した文字数分だけ2つ目の引数に指定した文字列を、1つ目の引数に指定した文字列の後ろに連結する

__文字列の比較__
・int strcmp(const *s1,const char *s2)
　　1つ目と2つ目の引数で指定された文字列を比較する
・int memcmp(const void*,const void*,size_t)
　　3つ目の引数で指定された分だけ、1つ目と2つ目のメモリ領域を比較する

__文字列の長さ__
・size_t strlen(const char*)
　　引数に指定された文字列の長さを返す

##math.h
math(数学)に関する標準関数が含まれる

__絶対値(小数)__
・double fabs(double)
　　引数に指定された少数の絶対値を返す

__三角関数__
・double sin(double)
　　sinを計算する
・double cos(double)
　　cosを計算する
・double tan(double)
　　tanを計算する

__対数__
・double log(double)
　　自然対数を計算する
・double log2(double)
　　底が2の対数を計算する
・double log10(double)
　　常用対数を計算する

__指数__
・double exp(double)
　　引数の値をxとした時のe^xを計算する
・double pow(double,double)
　　1つ目の引数の値をx,2つ目の引数の値をyとした時のx^yを計算する
・double sqrt(double)
　　引数の値の平方根を計算する
・double cbrt(double)
　　引数の値の立方根を計算する

##time.h
time(時間)に関する標準関数が含まれる

__時刻__
・time_t time(time_t*)
　　時刻を返す(値はUNIX時間になっているため、tm構造体とlocaltime関数などで変換するもよし。今回は省略。)
・double difftime(time_t,time_t)
　　2つの引数の時刻の差を返す

##ctype.h
知っているとより簡潔なコードが書ける標準関数が含まれる

__判定__
・int isalnum(int)
　　引数がA-Zまたはa-zまたは0-9の時true(真)となり、それ以外の時はfalse(偽)となる
・int isalpha(int)
　　引数がA-Zまたはa-zの時true(真)となり、それ以外の時はfalse(偽)となる
・int isdigit(int)
　　引数が0-9の時true(真)となり、それ以外の時はfalse(偽)となる
・int islower(int)
　　引数がa-zの時true(真)となり、それ以外の時はfalse(偽)となる
・int isupper(int)
　　引数がA-Zの時true(真)となり、それ以外の時はfalse(偽)となる
・isspace
　　引数が空白文字の時true(真)となり、それ以外の時はfalse(偽)となる

__大文字、小文字変換__
・int tolower(int)
　　引数がA-Zの時アルファベットを小文字にする
・int toupper(int)
　　引数がa-zの時アルファベットを大文字にする

#最後に
　まとめてみると、知らなかったものもあったりして覚えるいい機会になりました。また、ここにまとめた標準関数は基礎であり、ほんの一部に過ぎないので少しずつでも自分の知識を増やしていきたいです。
　これから他言語も学んでいくので、もし久しぶりにC言語に触れたときに忘れてしまっていたら、このリストを見返します。