人気ブログランキング | 話題のタグを見る

Objective-C Primer 番外編 徹底C復習 付録A.配列

最終更新日時 5/25/21:00

配列
この「付録A.配列」は「第5回.制御文その2」と「第6回.構造体」の間ぐらいで説明すべきことでしたが、あらためてここで説明します。

配列とは、同じデータ型の集まりに 0 から始まる通し番号をつけてそれぞれのデータ(配列の中ではこれを要素と呼びます)を区別できるようにしたものです。この配列の要素番号を使ってその個々のデータを取得したり設定したりすることもできます。

 C言語の中で最も頻繁に登場する配列は文字型charの配列でしょう。C言語の文字列はこの文字型charの配列として値(文字列)を保持しています
char ss[100];
 と char 型を100個並べた配列を宣言することも
char ss[] = "ABCD";
 と配列の要素数を指定しないで宣言して、同時に"ABCD"という文字列定数で初期化して結果的に要素数5個の配列を作ることもできます



この
char ss[] = "ABCD";
では、ss[0]にA、ss[1]にB、ss[2]にC、ss[3]にD、ss[4]に0(ゼロ)コードが配置されます。C言語の文字列では文字列の最後を表す「0コード」が必ず付け足されます。ですからこの配列ssの要素数は5ということになります。しかし配列では最初の要素の番号は0から始まりますので、配列ssは要素番号0から要素番号4までの5つの要素数をもった配列ということになります。要素数と要素番号が1つづれますので注意してください。

文字列の終わりに付け足される0コードとは NUL (存在しないという意味)を表すコードで数字の0とは別のものです。数字の0のコード番号は48となります


以上、簡単ですがこれで配列の説明を終ります。


文字列はポインタとして参照される
このchar型の配列である文字列は引数などで使われる(渡される)場合にはchar型のポインターとして扱われます。「seito2.m」の中で
- (BOOL)setTensuu:(char*)string

というメソッドが登場してきますが、引数stringのデータ型の(char*)は char 型のポインター、つまり文字列を受け取ることを表しています。このことについての説明は省略しますがC言語の文字列を表すデータ型は char型のポインター になると覚えておいてください。

最終更新日時 5/25/21:00

by vivacocoa | 2007-05-19 23:06


<< Objective-C Pri... 独り言 >>