例えば
などなど。
また、自動変数とそれを指すポインタがあったとき、このポインタは自動変数に支配されているという。
自動変数による支配は、ポインタそのものの生存期間が長いほど問題になりやすい。
{
int a, *b;
b = &a;
}
上記の場合ではa, *bともに寿命が同じであるため問題は起こりにくいが、
{
int *b;
{
int a;
b = &a;
}
//何らかの処理
}
この場合、aのスコープを抜けたあとに*bを使う可能せは0ではないため、アクセス違反などの問題が発生することがある。
最終更新:2010年08月05日 17:53