関数の中で仮引数を変更しても、実引数に影響はない。これは、( )による引数の受け渡しが一方通行であるため。
値渡し
オブジェクトの( )は、記憶域上の格納場所の( )を示す。
アドレス、番地
オペランドのアドレス取得には、( )と呼ばれる( )を使う。
アドレス演算子、単項&演算子
下位バイトが先頭側(低アドレス)に配置されるのを( )という。
リトルエンディアン
下位バイトが末尾側(高アドレス)に配置されるのを( )という。
ビッグエンディアン
オブジェクトのアドレスは( )で取り出せる。
アドレス演算子&
int *p = &n;この変数pの型は( )という。一般的には、( )、( )と言う。
int型オブジェクトへのポインタ型、intへのポイント型, int *型
ポインタpの値がnのアドレスであるとき、( )は( )を( )という。
p, n, 指す
&演算子は( )である
ポインタを生成する演算子
type型のオブジェクトnに対して( )を適用した
( )&nは、type *型の( )であり、その値はnのアドレスである
アドレス演算子&、アドレス式、ポインタ
ポインタに( )と呼ばれる( )を適用した( )は、そのポインタが指すオブジェクトそのものを表す
間接演算子、単項*演算子、間接式
type *型ポインタpがType型オブジェクトnを指すとき、( )を適用した( )*pは、nの( )となる
間接演算子*、間接式、エイリアス
ポインタに間接演算子を適用することで、ポインタが指すオブジェクトを間接的にアクセスすることを( )という
参照外し
アクセス先の決定は、プログラムの( )時に( )に行われるのではなく、プログラムの( )時に( )に行われる
コンパイル、静的(スタティック)、実行、
動的(ダイナミック)
何も指さないことが保証されている( )という特別なポインタがある
空ポインタ
空ポインタを表すオブジェクト形式マクロが、
( )という名称の( )である
空ポインタ定数、NULL
空ポインタ定数NULLは( )で定義されている
<stddef.h>ヘッダ
番地を表すポインタは、一定の数量とみなせる。算術型とポインタ型を合わせて( )という
スカラ型
c言語のポインタには( )もある
関数を指すポインタ
( )は、その配列の( )と解釈される
配列名、先頭要素へのポインタ
ポインタpが配列中の要素eを指す時
p( )iは要素eのi個だけ後方を指すポインタ
p( )iは要素eのi個だけ前方を指すポインタ
+、-
要素へのポインタp + iは( )のことである
&a[i]
ポインタpが配列中の要素eを指す時
要素eのi個だけ後方の要素を指す*(p + i)は( )と表記できる
要素eのi個だけ前方の要素を指す*(p - i)は( )と表記できる
p[i]、p[-i]
配列aの要素数がnのとき、その要素はa[0]からa[n-1]までの( )個である。ところが、要素へのポインタとしては、&a[0]から&a[n]までの( )個が有効である。これは、配列の走査の終了条件の判定で、末尾要素の一個後方の要素へのポインタが( )として使えるからである。
n、n + 1、番兵
type型配列aの先頭要素a[0]を、type *型ポインタpが指す時、( )はあたかも( )であるかのように振る舞う。これを( )と呼ぶ
ポインタp、配列aそのもの、
ポインタと配列の表記上の互換性
配列の( )は、先頭要素から何要素分後方に位置するかという( )を表す値で、必ず( )から始まる
添字、オフセット、0
ポインタ同士の加算は( )で、減算は( )である。
不可能、可能
代入演算子の( )を配列とすることはできない
左オペランド
関数間での配列の受け渡しは( )として行う。
呼び出された関数では、( )が( )であるかのように振る舞う。
( )は、別の引数として受け渡しする必要がある
先頭要素へのポインタ、受け取ったポインタ、
呼び出し側が渡した配列そのもの、要素数