回答編集履歴
1
SIZEO -> sizeofに修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
使用しないポインタ変数は宣言してはならないというのは、大事なCの作法です。
|
5
5
|
|
6
6
|
少しメモリとCの文法の処理の基本なことですが。(アセンブラを学ぶと簡単に理解できます)
|
7
|
-
Auto変数は、スタックエリアに積み込まれます=int型ならば、
|
7
|
+
Auto変数は、スタックエリアに積み込まれます=int型ならば、sizeof(INT)バイトほど確保されます。
|
8
8
|
このとき、スタックエリアもメモリの一部で、そのブログラムで確保されるメモリエリアのどこに配置されるかはわかりません。よってたまたまそのエリアの内容が0だっただけです。
|
9
9
|
0が安心できるのは実数型のときだけです。ポインタで0番地にアクセスした場合、殆どの場合はそのPCは再起動されたり、動作が不定になるなどの危険をはらんでいます。
|
10
10
|
よって、使用しないポインタ変数は、宣言すべきではないのです。予備する場合は、安全な変数のポインタあたりを初期値として格納しておくなど必要です。
|