[文字列]

例えば

チャーワード[] = { "!" 'H'、 'E'、 'L'、 'L'、 'O'、 '\ 0'}。

単語[0] H
単語[1] E
単語[2] リットル
単語[3] リットル
ワード[4] インクルード
単語[5]
単語[6] \ 0

定義

  • 文字列の最後には文字0の文字列です **
    、異なって0または「\ 0」は同じである、しかし、および「0」、「0」、小数点48によって表される文字は、あります
  • 0ストリング終了フラグは、彼は、文字列の一部ではない
    文字列0の長さを計算する際に含まれていません
  • ポインタまたは配列アクセス文字列の配列の形で
    より多くのポインタの形であります
  • string.hの文字列処理関数がたくさんあります

の文字列

char * strの=「こんにちは」;
char型の単語は、[]「こんにちは」=。
チャーライン[10] =「こんにちは」。

文字列定数

  • 「こんにちは」、コンパイラは、文字列に変換されます、配列の長さは6であり、ならびに末端0の終了を示します
  • 隣接する二つの文字列が自動的に接続されています
  • 文字の配列の形でC言語の文字列
  • 文字列演算子を操作しないでください
  • これは、文字列配列を用いて横断することができます

文字列またはポインタの配列?

= S * CHAR「こんにちは、世界は!」;
による文字列の特殊な位置に、文字列定数を指すように初期化ポインタは、sがその文字列はsが指すこと、実際のconstのchar * sとなるように、配置されているsの、書き込むことができないの改変[0]、S [1 ] 、等

あなたは文字列を変更する必要がある場合は、配列を使用する必要があります:
文字Sは[] =「こんにちは、世界!」;

配列 ポインタ
チャーS [] =「こんにちは」。 char * S =「こんにちは」;
ここでは、文字列は自動的にローカル変数空間として回収されます この文字列は、どのパラメータを処理し、動的に割り当てられたスペースを知りません
文字列を構築します 文字列の処理

CHAR *文字列は、必ずしもではありません

チャーは、*文字列はフォームのように表すことができる
が、charが* 必ずしもされていない文字列
内の文字の配列を指すことが意図は文字へのポインタで
のみ0の終了時に、それを参照した文字列は、文字を指し弦

文字列の計算

1.入出力%の

 char string[8];
 scanf("%7s",string);
 printf("%7s",string);

scanf関数は、ワード(読み込みスペース、タブ、キャリッジリターン日)読み込み
%7Sを示していることが唯一の7文字まで読んで(だけでなく、エンディング\ 0)
の数字はこれを読み取ることができる文字の最大数を示すの内側%のSを数値のデジタル配列が小さなものよりも良いはずです

2.ポインタの初期化を覚えておいてください
scanf関数その後、*覚えている文字列を0に初期化されている文字を

文字列関数

書式#include <文字列の.h>

  • S strlenをリターン文字列の長さ(終端0を含まず)
    の入力と出力のLU%の
    行のchar [] = "こんにちは";
    のprintf((行)strlenを"%= strlenをLU")。
  • strcmpは(S1、S2)を返し、2つの文字列を比較
    S1 == S2:0
    正の差:S1> S2
    負差:S1 <S2
  • strcpyのコピーをdstに列src
  • strcatのS1、S2には、長い文字列のコピーに続いています
リリース9件のオリジナルの記事 ウォンの賞賛0 ビュー90

おすすめ

転載: blog.csdn.net/weixin_46399138/article/details/105293316