>>574>>575
ありがとうございました。
hogeが初期化されずに無効な領域を指しているというのがよくわかったようなわからないような。

確かに
char *hoge = NULL;
してからreallocするとエラー出ませんでした。
これは「 charへのポインタhogeはどこも指していませんよ」
っていう解釈でいいのでしょうか。
それに対してreallocして領域確保できるっていうのも不思議なんですが。

ちなみに、

char *hoge;
hoge = malloc(1);
hoge = realloc( hoge, 10);
ならできてしまうというのもよくわからないです。
うまい解説下さい。よろしくおねがいします。