给空指针指向的地址赋值是错的,程序会崩溃。如int *q=NULL; *q=*(p+5)会死机。如果你给q指向的地址赋值都是错的,如*q=xxx;但是q本身是个变量,你给q本身赋值是没有问题的,像这样: q = xxx;看下关于指针这章的书,你就会明白