概ね方位不定だが多分割と偏っている
スポンサーサイト
--年--月--日 (--) | 編集 |
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


C 配列データの初期化
2006年07月29日 (土) | 編集 |
intだのcharだのdoubleだのを初期化(最初に値を設定する)ことは今までに何回か行っているが、配列も同様、初期化を行うことが出来る。


ってわけでその方法についてだ。
まあ配列と言えど所詮は変数みたいなものであり、式で表現出来るので、

例えば
a[0]=10
a[1]=20



a[99]=990

…という風に書くことで普通に初期化出来るんだが、a[100]のように100個もあるような配列だと大変過ぎてやってられないわけだ。

それでかどうかは知らないが、C言語では配列の宣言時に{ }の中にデータを書いておくことによって、自動的に配列のデータを初期化してくれるという便利な機能があるそうだ。つってもその為にはstaticという指定をしなくてはならんらしいけどな。
staticについては後でやるので、今はとりあえず配列を宣言時に初期化するときはstaticが必要だってことだけ覚えておけばいいぜ。

static int a[100]={0,1,2,3,4,5,6,…99,100};

こんな感じだ。
また、宣言時に{ }によって初期化データがある場合は[ ]の値を省略出来る。

static int a[]={0,1,2,3,4,5,6,…99,100};

こんな感じに。
しかし便利な機能つっても配列要素が100とか大きい数字だと結局大変だよな。そらa[i]=i…ってのを100個書くよりは楽なのだろうが。
ま、それは別の話か。


んじゃ例によって実際にやってみよう。
10人分の数値を宣言と同時に入力し、合計と平均を求めてみる。

test_string_f.jpgtest_string_f2.jpg

こんな感じ。

dentaku.jpg

電卓で確認したので間違いないぜ

どうでもいいことだが、今回は記述ミスとか無かった。素晴らしい。
うひひ今夜は随分と素直じゃないか? そろそろ俺のコードが良くなってきたか?
ええのんかーほれええのんかー




無闇に興奮しつつ、上手くいったことに気を良くしてデータの終わりを入力するプログラムと組み合わせてみる。例によって-9999をデータの終わりとしてみよう。

test_string_f3.jpgtest_string_f4.jpg

こんな感じ。

何か怒られた。コンパイラたんはこうでないとな。って悪いのは俺?
まあそれは置いておいて、数値的には何も弄っていないのでデータの終わりを-9999で表現しようがEOFで表現しようが結果は変わらない。
電卓で確認する必要も無かろうよ。


んじゃ、まとめよう。
配列はstaticを指示することで宣言時に初期化出来る
宣言時に初期化する場合、配列要素に書く値を省略出来る
今回勉強中にインコに邪魔された回数:1回(ただし10分程持続。糞撃もあり)


以上。
配列とか面倒そうだと思ったが、今のところ順調なようだな。
これから面倒になるのかもしれないがね。
スポンサーサイト

コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
この記事へのトラックバック
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。