文字列関数 - string.h
当ページのリンクには広告が含まれています。
スポンサーリンク
ここでは文字列のコピーや連結を行う文字列関数を紹介します。
string.h
文字列関数を利用する場合「string.h」というヘッダーファイルを読み込む必要があります。
#include <string.h>
文字列関数
文字列関数の概要を以下のテーブルにまとめました。
| 関数 | 概要 |
|---|---|
| strcpy(s1, s2) | s2 を s1 にコピーします。 |
| strcat(s1, s2) | s1 と s2 を連結します(s1の後にs2を連結) |
| strlen(s) | 文字列s の長さを取得します。 |
| strcmp(s1, s2) | s1 と s2 が同じ文字列なら「0」を取得します。異なる場合はそれ以外の値を返します。 |
それでは実際に文字列関数を使ってみましょう。
#include <stdio.h>
#include <string.h>
int main(void)
{
int len;
char s1[100], s2[100], s3[100];
// 文字列を代入
strcpy(s1, "ABC");
strcpy(s2, "XYZ");
printf("s1 = %s, s2 = %s\n", s1, s2);
// 文字列を連結
strcat(s1, s2);
printf("s1 + s2 = %s\n", s1);
// 文字列を長さを取得
len = strlen(s2);
printf("s2 の長さ %d\n", len);
// 文字列を比較
strcpy(s3, "XYZ");
printf("s2 s3 の比較 %d\n", strcmp(s2, s3));
printf("s1 s2 の比較 %d\n", strcmp(s1, s2));
return 0;
}
実行結果です。
s1 = ABC, s2 = XYZ s1 + s2 = ABCXYZ s2 の長さ 3 s2 s3 の比較 0 s1 s2 の比較 -23
このように変数に代入した文字列の連結・長さ・比較が出力されます。
次は「関数の作り方」をみていきます。