文字配列
ひもの定数、のような
"I am a string"
特性の配列はある。 それはひものASCII文字によってcで内部的に表される、すなわち、「私」、ブランク、「a」、「m」、…または上記のひもは、および特別な空白文字の「\ 0」従ってプログラムによって終えられてひもの端を見つけてもいい。
ひもの定数はコードの出力をさせることで頻繁に使用されるprintfを使用してわかりやすく:
printf("Hello, world\n");
printf("The value of a is: %f\n", a);
ひもの定数は変数と関連付けることができる。 cは1つの特性(1バイト)を一度に含むことができる特性タイプ変数を提供する。 文字ストリングは特性タイプ、位置ごとの1つのASCII文字の配列で貯えられる。
ひもが空白文字の「\ 0」によって通常終わるので、私達は配列の1つの余分ストレージロケーションを要求することを決して忘れてはいけない。
cは全体のひもをすぐに処理するオペレータを提供しない。 ひもはポインターまたは標準的なひもの図書館string.h.から利用できる特別なルーチンによって処理される。
特性を使用してポインターは配列の名前が最初要素にポインターちょうどであるので比較的容易である。 プログラムを次に与えられたと考慮しなさい:
#include<stdio.h>
void main()
{
char text_1[100], text_2[100], text_3[100];
char *ta, *tb;
int i;
/* arrrayあるためにメッセージを置きなさい */
/* 特性の; それを初期設定しなさい */
/* 一定したひもに「…」 */
/* 編集者が決定するようにしなさい */
/* 使用によるそのサイズ[] */
char message[] = "Hello, I am a string; what are
you?";
printf("Original message: %s\n", message);
/* text_1にメッセージをコピーしなさい */
i=0;
while ( (text_1[i] = message[i]) != '\0' )
i++;
printf("Text_1: %s\n", text_1);
/*使用明確なポインターの算術 */
ta=message;
tb=text_2;
while ( ( *tb++ = *ta++ ) != '\0' )
;
printf("Text_2: %s\n", text_2);
}
プログラムの出力は次の通りある:
Original message: Hello, I am a string; what are you?
Text_1: Hello, I am a string; what are you?
Text_2: Hello, I am a string; what are you? |
標準的な「ひも」の図書館は多くの有用な私達がひもセクションで後で学ぶひもを処理するために機能を含んでいる。
|