06/06/17 09:15:32
>>426
いろいろ調べてみて分かってきたのですが
今私が使っているCPUではNULLがゼロ番地を示すようにコードが落ちます。
ここまでは普通の話かもしれません。
(違うところを差す環境もあるらしいですが)
このCPUの場合には0番地はCPUが使う特殊な領域として定義されていて
ユーザがアクセスすると暴走するようです。
明確にCPUリセットや決められた割り込みが発生すればいいのですが、
他に使っている割り込み処理を壊してしまったりするようです。
正直、NULLをチェックするのを忘れた場合でも、CPUリセットする
だろうという思い込みはありましたが、
やっぱり、チェックし忘れたらどうするんだっていう言い方だけでは
分かりませんよね。。。
>>428
結局そういうことですよね。
しかも、booleanがTRUEのときに、返り値のアドレスがNULLかチェックする
なんて馬鹿げてるし。
結局NULLかどうかは必ず検査していないといけないですよねw
>>430
NULLが返ることもあることを仕様書に明記すればいいみたいな話で
もういいやみたいな言われてしまいました。
でもやっぱり結局はNULLかどうかを検査するコードを常に書かないと
いけないわけですよねw
難しいですね もっと勉強します。