名 前
stpcpy, strcasecmp, strcat, strchr, strcmp, strcoll, strcpy, strcspn, strdup, strfry, strlen, strncat, strncmp, strncpy, strncasecmp, strpbrk, strrchr, strsep, strspn, strstr, strtok, strxfrm, index, rindex − 文 字 列 を 操 作 す る 関 数
書 式
#include
<strings.h>
int strcasecmp(const char *s1, const char
*s2); 文 字 列 s1
と s2 を 大 文 字
小 文 字 の 違 い
を 無 視 し て 比
較 す る 。
int strncasecmp(const char *s1, const char
*s2, size_t n); 文
字 列 s1 と s2 の
最 初 の n 文 字
を 、 大 文 字 小
文 字 の 違 い を
無 視 し て 比 較
す る 。
char *index(const char *s, int
c); 文 字 列 s
中 に 最 初 に 文
字 c が 現 れ た
位 置 へ の ポ イ
ン タ ー を 返 す
。
char *rindex(const char *s, int
c); 文 字 列 s
中 に 最 後 に 文
字 c が 現 れ た
位 置 へ の ポ イ
ン タ ー を 返 す
。
#include <string.h>
char *stpcpy(char *dest, const char
*src); 文 字 列 を
src か ら dest に コ
ピ ー し 、 dest に
格 納 さ れ た 文
字 列 の 末 尾 へ
の ポ イ ン タ ー
を 返 す 。
char *strcat(char *dest, const char
*src); 文 字 列
src を 文 字 列 dest
に 追 加 し 、 dest
へ の ポ イ ン タ
ー を 返 す 。
char *strchr(const char *s, int
c); 文 字 列 s
中 に 最 初 に 文
字 c が 現 れ た
位 置 へ の ポ イ
ン タ ー を 返 す
。
int strcmp(const char *s1, const char
*s2); 文 字 列 s1
と s2 を 比 較 す
る 。
int strcoll(const char *s1, const char
*s2); 現 在 の ロ
ケ ー ル を 使 用
し て 、 文 字 列
s1 を s2 と 比 較
す る
char *strcpy(char *dest, const char
*src); 文 字 列
src を dest に コ ピ
ー し 、 dest の 先
頭 へ の ポ イ ン
タ ー を 返 す 。
size_t strcspn(const char *s, const char
*reject); 文 字 列
s の 、 文 字 列
reject に 含 ま れ な
い バ イ ト だ け
で 構 成 さ れ る
最 初 の 部 分 文
字 列 の 長 さ を
計 算 す る 。
char *strdup(const char *s); 文
字 列 s を 、
malloc(3) を 使 っ て
確 保 し た メ モ
リ ー に 複 製 し
て 返 す 。
char *strfry(char *string);
string 中 の 文 字 を ラ ン ダ ム に 並 び 替 え る 。
size_t strlen(const char
*s); 文 字 列 s
の 長 さ を 返 す
。
char *strncat(char *dest, const char
*src, size_t n); 文
字 列 src の 最 大
n 文 字 を 文 字
列 dest に 追 加 し
、 dest へ の ポ イ
ン タ ー を 返 す
。
int strncmp(const char *s1, const char
*s2, size_t n); 文
字 列 s1 と s2 を
最 大 n バ イ ト
ま で 比 較 す る
。
char *strncpy(char *dest, const char
*src, size_t n); 文
字 列 src か ら dest
へ 最 大 n バ イ
ト を コ ピ ー し
、 dest の 先 頭 へ
の ポ イ ン タ ー
を 返 す 。
char *strpbrk(const char *s, const char
*accept); 文 字 列
accept に 含 ま れ る
バ イ ト の い ず
れ か が 、 文 字
列 s 内 で 最 初
に 現 れ る 位 置
を 特 定 す る 。
char *strrchr(const char *s, int
c); 文 字 列 s
中 に 最 後 に 文
字 c が 現 れ た
位 置 へ の ポ イ
ン タ ー を 返 す
。
char *strsep(char **stringp, const char
*delim); 文 字 列
s か ら 、 delim の
い ず れ か の バ
イ ト で 区 切 っ
た 最 初 の ト ー
ク ン を 取 り 出
す 。
size_t strspn(const char *s, const char
*accept); 文 字 列
s 中 の accept に 含
ま れ る 文 字 だ
け で 構 成 さ れ
る 最 初 の 部 分
文 字 列 の 長 さ
を 計 算 す る 。
char *strstr(const char *haystack, const char
*needle); 部 分 文
字 列 needle が 文 字
列 haystack 中 で 最 初
に 現 れ る 位 置
を 探 し 、 そ の
部 分 文 字 列 へ
の ポ イ ン タ ー
を 返 す 。
char *strtok(char *s, const char
*delim); 文 字 列
s か ら 、 delim の
い ず れ か の バ
イ ト で 区 切 っ
た ト ー ク ン を
取 り 出 す 。
size_t strxfrm(char *dest, const char
*src, size_t n);
src を 現 在 の ロ ケ ー ル に 変 換 し 、 最 初 の n 文 字 を dest に コ ピ ー す る 。
説 明
文 字 列 関 数 は 、 ヌ ル 終 端 さ れ た 文 字 列 に 対 し て 、 文 字 列 操 作 を 実 行 す る 。 そ れ ぞ れ の 関 数 の 説 明 に つ い て は 個 々 の manペ ー ジ を 見 よ 。
関 連 項 目
index(3), rindex(3), stpcpy(3), strcasecmp(3), strcat(3), strchr(3), strcmp(3), strcoll(3), strcpy(3), strcspn(3), strdup(3), strfry(3), strlen(3), strncasecmp(3), strncat(3), strncmp(3), strncpy(3), strpbrk(3), strrchr(3), strsep(3), strspn(3), strstr(3), strtok(3), strxfrm(3)
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。