char *str1=NULL;与char *str2=””;不一样: str1地址为0,没有分配空间;而str2分配空间,得到””的字符串(””是只包括’/0’的字符串),地址不为空。所以判断是否为空时,这两种情况都要考虑到。