还是fread的问题???

代码如下:
#include <stdio.h>
#include <stdlib.h>

int main( void )
{
FILE *fp;
int *p;
int i;

fp = fopen("/ln/RDB1.rdb", “r”);
if( fp != NULL ) {
i= fread( p, sizeof( int ), 1 , fp );

fclose( fp );

return EXIT_SUCCESS;
}

return EXIT_FAILURE;
}

总是提示我:core dump!!
不知道是为什么??

p没有分配内存.

int p[1];

i= fread( p, sizeof( int ), 1 , fp );

or
int p;

i= fread( &p, sizeof( int ), 1 , fp );

or