==== リストの続き ==== リスト構造 ・リンクリスト ・連結リスト ・リスト アドレスは配列と違い、並んでいない! 〇配列の場合 符号なし 8bit整数 unsigned char arr[5] = {1, 2, 3, 4, 5};(固定長のデータ構造) Addr Addr var val binary size 0x0003~0x000A arr[0] ← 1 00000001 (8bit 1byte) 0x000B~0x0012 arr[1] ← 2 00000010 (8bit 1byte) 0x0013~0x001A arr[2] ← 3 00000011 (8bit 1byte) 0x001B~0x0022 arr[3] ← 4 00000100 (8bit 1byte) 0x0023~0x002A arr[4] ← 5 00000101 (8bit 1byte) 〇リストの場合 h→1→3→5→7→NULL .next にはそのリスト要素の次の要素のアドレスが格納 .data にはそのリスト要素の値が格納 データを、その都度作ってつなげてゆく(可変長のデータ構造)  001  [ 1 ]→NULL h.next = 001 001.data = 1   001 h→[ 1 ]→NULL リスト要素をもう一個作る(3のデータを作ってつなげる) A05  [ 3 ]→NULL 001.next = A05 A05.data = 3   001  A05 h→[ 1 ]→[ 3 ]→NULL   001  A05 013 CB8 h→[ 1 ]→[ 3 ]→[ 5 ]→[ 7 ]→NULL 課題を出します。 ⓪アドレスが代入できる変数 addrがあります。  こいつを使って、headから、全部の要素をたどる手順を考えてみて addr←head.next  addr.data (1だよね) ①3と5の間に↓こいつを挿入する手順を考えてみて  021  [ 4 ]→NULL ②①のあと、5のデータいらなくなっちゃた。削除の手順を考えてみて 月曜:レコード型の説明もするよ