配列、特にサイズと要素数 C#9
こんにちは!
やっぱり3月は忙しい時期ですね。
新生活の準備や卒業式などやることがたくさんあります。
大変ですが頑張っていきましょう。
今日は複数の変数をまとめて扱うというところから始めていきます。
配列
- 複数の変数をまとめて宣言する時は配列を使う。
- 配列は次のようにして宣言、初期化する。
- 配列名とは配列全体の名前のこと。
- 要素数とは作られる変数の数のこと。整数値のみ指定できる。
- 要素数よりも数値の個数が少ない場合、残りには0が代入される。
- 要素数は省略できる。省略した場合は数値の個数分だけ要素数が確保される。
- 配列名に番号を付けるには下のようにする。
- 配列の要素を別の配列にコピーするにはmemcpy関数を使う。
- memcpy関数は下のようにして使う。
新しく配列というものが出てきました。
sizeof演算子のところで、サイズと要素数の違いが分からず少し躓いてしまいました。
ですのでsizeof演算子について調べ、まとめてみました。
要素数とサイズ
要素数とサイズというものはまったく別のものです。
サイズというのはメモリサイズの略みたいです。
メモリについてはまだ勉強していないのでサイズと表記したのだと思います。
これから要素数を求めていきます。
要素数を求めるには、下のような式が必要です。
「配列array全体のサイズ / 配列arrayの要素1つ分のサイズ」という式になっています。
まず、個々の式を求めていきます。
配列のサイズは、「型のサイズ * 要素の個数」で求めることができます。
今はint型で、int型のサイズは4バイトです。
配列arrayはint型の配列で、3つの要素を持っています。
この時、配列array全体のサイズは、4 * 3 = 12、
今は要素の数が知りたいので、int型のサイズをなくす必要があります。
なので、配列の1つ分の要素で全体を割ります。
配列array[0]のサイズは、4 * 1 = 4 となります。
こうすると要素の数が求まるというわけです。
たぶんこんな感じだと思います。
サイズは容量ということでいいのでしょうか。
もし間違っていたらコメントなどで指摘していただけると助かります。
ここまで来たら練習問題です。
逆順で表示するというところで少し考えましたが、解答見ずにできたのでよかったです。
簡単なことですが、考えて答えを出すのは楽しいですね。
長くなってきたので今日はここまでにしたいと思います。
それでは。