Linux講座にようこそ。このページは「C言語プログラミング入門 - 第14章.ライブラリ関数 - 文字列処理ライブラリ」です。
strerror関数はエラー番号に対応する説明文を取得します。通常、エラー番号はライブラリ関数でエラーが発生した時に、外部変数errnoに設定される値を指定します。
形式 | #include <string.h> char *strerror(int errno); |
---|---|
返り値 | エラー番号に対応する説明文の先頭アドレスを返します。エラー番号に対応する説明文が無い場合は「Unknown error nnn」という説明文を返します。 |
引数 |
|
strpbrk関数は指定された文字の組み合わせ(文字セット)から成る文字列を検索します。
形式 | #include <string.h> char *strpbrk(const char *str, const char *keyset); |
---|---|
返り値 | 文字セットに含まれる文字のどれかに一致した文字のアドレスを返します。一致する文字が見つからなかった場合はNULLを返します。 |
引数 |
|
テキストファイル中の英字(a〜z、A〜Z、半角スペース)の部分だけを抽出して表示します。(機能的にはstrspn関数の例題と同じです)なお、入力ファイル(./DATA/ex14_2_6.dat)が入力出来なかった場合は、標準エラー出力にメッセージを出力します。
$ ./ex14_2_9.prg Merry Husky A Kuma Mix Hana Shiba AB ken Mix Taro Bull A $ $ mv ./DATA/ex14_2_6.dat ./DATA/ex14_2_6.txt ← ファイル名ex14_2_6.datをex14_2_6.txtに変更します $ ./ex14_2_9.prg No such file or directory $
memmove関数はメモリ領域を第3引数で指定したバイト数分コピーします。コピー元とコピー先が重なっていてもかまいません。(重なっていない場合はmemcpy関数を使った方が良いでしょう)
形式 | #include <string.h> void *memmove(void *dest, const void *src, size_t n); |
---|---|
返り値 | コピー先の領域destへのポインタを返します。 |
引数 |
|
memset関数はメモリ領域を指定した値(1バイト長)で埋め込みます。
形式 | #include <string.h> void *memset(void *dest, int c, size_t n); |
---|---|
返り値 | メモリ領域destの先頭アドレスを返します。 |
引数 |
|
指定した高さの三角形を表示します。
$ ./ex14_2_10.prg 三角形の高さを入力してください ==> 8 * *** ***** ******* ********* *********** ************* *************** $