第11回 01 月 05 日
5 文字列,配列,ポインタ
5.3 文字列操作関数
- strcpy(char *sr1, const char str2) str2 を str1 にコピーする
- strcat(char *str1, const char str2) str2 を str1 の最後に付加する
- strcmp(const char *str1, const char str2) str1 と str2 の文字列比較。等しければ 0 をそうでなければ異なる最初の文字を unsigned char として返す
- size_t strlen(const char *str)文字列の長さを返す
string-assingnment.c
演習 5.3 キーボードから英文を入力し,スペース,カンマ,ピリオドを数えるプログラムを作れ。
exer5-3.c
演習: string-assignment.c を改造して,strcat(), strcmp(), strlen() を使ったプログラムを作れ
5.4 文字列の配列
jmark.c
演習 5.4 jmark.c において氏名も入力できるように修正せよ
演習 5.5 英語で色の名前を入力し,日本語の色の名前を出力するプログラムを作れ
(たとえば red と入力すると 赤 と出力する)
5.5 ポインタ配列
pointer-array.c
5.6 main() 関数の引数
echo.c
- int atoi(const char *nptr) nptr の指す文字列を整数に変換する
- double atof(const char *nptr) ntpr の指す文字列を double に変換する
サンプルプログラムは次のとおり。
atoi.c
演習: atoi.c を改造し,コマンドライン引数を2つとって,2 数の商を印刷するプログラム atof.c を作れ
5.7 メモリの動的割り当て
- void *calloc(size_t nmemb, size_t size) size バイトの nmemb この要素からなる配列にメモリを割り当てる。割り当てられた領域はすべてのビットが 0 になるように初期化される
- void *malloc(size_t size) size バイトのメモリを確保する。初期かは行われない。
- void free(void *ptr) ptr が指すメモリ領域を解放する
pointer-string-function.c
次のサンプルプログラムは文字列を小文字に変換するプログラムである
tolower.c
tolower2.c
tolower3.c
5.8 文字列操作関数
mystrcpy.c
mystrcat.c
mystrcmp.c
mystrlen.c
mystring-function.c
戻る
Shin-ichi ASAKAWA
asakawa@ieee.org