在定义指针时,指针变量名前的*号是必须的,不能少,区别于普通变量, 说明当前变量是指针变量,而不是普通的变量。对于你的问题,我举例说明:情形一:int a[5]={1,2,3,4,5};int *p=a;//这是在定义指针变量p的同时就直接给它初始化,即把数组a的首地址赋给它。情形二:int a[5]={1,2,3,4,5};int *p;//声明指针变量pp = a;这里的话是先声明指针p,然后再对它初始话,等价于情形一,只是分开写法而已。