C言語の文字列
文字列は文字の配列であり、ヌル文字(\ 0)で終了します。ヌル文字はユーザーによって配置されません。コンパイラーはヌル文字を文字列の最後に自動的に配置します。
配列と文字列の違いは、コンパイラが配列の最後にヌル文字を配置しないのに対し、文字列ではコンパイラがヌル文字を配置することです。
これがC言語の文字列の構文です
char myStr[size];
ここで
myStr: 文字列
サイズ: 文字列のサイズを設定する
以下に示すようにC言語で文字列を初期化します-
char myStr[size] = “string”;
char myStr[size] = { ‘s’,’t’,’r’,’i’,’n’,’g’,’\0’ }; 次の表は、C言語での文字列の機能を示しています。
| strcpy(s1、s2) | 文字列s2を文字列s2にコピーします |
| strcat(s1、s2) | s2をs1の終わりに連結します |
| strlen(s1) | 文字列s1の長さを返します |
| strcmp(s1、s2) | s1とs2が同じ場合は0を返しますs1のASCII値がs2より大きい場合は0より大きいs1のASCII値がs2より小さい場合は0未満 |
| strchr(s1、ch) | 文字列s1で最初に出現する文字chへのポインタを返します |
| strstr(s1、s2) | 文字列s1で最初に出現する文字列s2へのポインタを返します |
これがC言語の文字列の例です
例
#include <stdio.h>
#include <string.h>
int main () {
char s1[10] = "Hello";
char s2[10] = "World";
int len, com ;
strcpy(s1, s2);
printf("Strings s1 and s2 : %s\t%s\n", s1, s2 );
strcat( s1, s2);
printf("String concatenation: %s\n", s1 );
len = strlen(s1);
printf("Length of string s1 : %d\n", len );
com = strcmp(s1,s2);
printf("Comparison of strings s1 and s2 : %d\n", com );
return 0;
} 出力
Strings s1 and s2 : WorldWorld String concatenation: WorldWorld Length of string s1 : 10 Comparison of strings s1 and s2 : 87
-
C言語のstrcmp()関数とは何ですか?
Cライブラリ関数intstrcmp(const char * str1、const char * str2) str1が指す文字列を比較します str2が指す文字列へ 。 文字の配列は文字列と呼ばれます。 宣言 以下は配列の宣言です- char stringname [size]; 例-charstring[50];長さ50文字の文字列 初期化 単一文字定数の使用- char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,&ls
-
C言語のstrcpy()関数とは何ですか?
Cライブラリ関数char* strcpy(char * dest、const char * src) srcが指す文字列をコピーします 宛先へ 。 文字の配列は文字列と呼ばれます。 宣言 以下は配列の宣言です char stringname [size]; 例-charstring[50];長さ50文字の文字列 初期化 単一文字定数の使用- char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}