以下のコード スニペットを検討してください。
#include <stdio.h>
int main()
{
int p = malloc( sizeof( int ) );
return 0;
}
上記のプログラムは、警告なしで正常にコンパイルされます。
integer variable
メモリチャンクのアドレスがポインタではなく格納されているため、エラー/警告を出すべきではありませんか?
を含めるのを忘れていたので、最初は動作がおかしいと思いましたstdlib
。すぐに、私の仮定は失敗しました。を含めても動作は同じstdlib
です。
含めた後、以下のプログラムを参照してくださいstdlib
#include <stdio.h>
#include <stdlib.h>
int main()
{
int p = malloc( sizeof( int ) );
return 0;
}
このプログラムも同様の動作をします。
正常にコンパイルされるのはなぜですか?