前回(2017/12/08)の内容 [2] 前回 (2017/12/08) の復習[2] : ポインタ値の性質 「&:ポインタ演算子」+変数名 or 配列名は、ポインタ値を与える 「*:間接参照演算子」+ポインタ値は、「変数」として振る舞う 配列の要素の参照 : ポインタ値[整数値] == *(ポインタ値+整数値) ポインタ値は計算の対象 「型 *」のポインタ値に +1 すると、アドレス値が、sizeof(型)だけ増える ポインタ値+整数 == &*(ポインタ値+整数) == &(ポインタ値[整数]) == 整数番目の要素のポインタ値 多次元の配列 (配列の配列) : 連続したメモリに割り当てられる 配列要素の参照 : 配列 size と添字からアドレス値を計算 計算したポインタ値を利用して「変数(メモリ)」が参照(操作)できる 「強力」な機能 : 古い C 言語が「現役」な理由 -> とても危険な機能 関数とポインタ値 (実行時に)関数に渡されるのは、アドレス値のみ(型情報は渡されない) 関数の仮引数変数宣言によって、アドレス値に型情報が補われポインタ値になる 「実引数の型」と「仮引数の型」が異ると「矛盾」が生じる : header file (*.h) で、その矛盾を解消する