ホームページ  >  記事  >  php教程  >  C言語における文字配列と文字列の使い方を詳しく解説

C言語における文字配列と文字列の使い方を詳しく解説

高洛峰
高洛峰オリジナル
2016-12-12 17:17:351385ブラウズ

1. 文字配列の定義と初期化
文字配列の初期化を理解する最も簡単な方法は、配列内の各要素に文字を 1 つずつ割り当てることです。
char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y'};
以上です10 個の文字は、str[0] から str[9] までの 10 個の要素にそれぞれ割り当てられます。中括弧内に指定された文字数が配列の長さを超える場合は、構文エラーとして扱われます。配列の長さより小さい場合、これらの文字のみが配列に含まれます。最初の要素については、残りの要素は自動的に空の文字 (つまり ') に設定されます。

3. 文字列表現
C 言語では、文字列の表現と保存には次の 2 つの方法があります。
(1) 文字列を保存するには文字配列を使用します
char str[ ]="I love China";
( 2) を使用します。文字列を指す文字ポインタ
char* str="I love China";
2 番目の表現方法では、str を文字列変数と考え、文字列定数「I love China」は次のようにすべきだと考える人もいます。文字列変数を定義するときに直接定義すると不正です。
C 言語は文字列定数を文字配列として扱います。文字配列は文字列定数を格納するためにメモリ内に開かれます。プログラムが文字列ポインタ変数 str を定義するとき、文字列の最初のアドレス (つまり、文字列が格納されているアドレス) のみが変更されます。文字列が格納されます)。文字配列の最初のアドレスが str に割り当てられます。
両方の表現方法での文字列出力は
printf("%sn",str) を使用します。
%s は文字ポインター変数名 str を指定して文字列を出力することを意味します (最初の表現方法では、文字配列名が最初のアドレスになります)これは 2 番目の型のポインタの意味と一致します)、システムは最初にそれが指す文字データを出力し、次に自動的に 1 を str に追加して次の文字を指すようにします...、これが続きます文字列の終わりの識別子まで "

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。