c指针声明和初始化

正常声明并初始化1

int a = 1;
int *p;
p = &a;  //初始化为已存在的指针地址

正常声明并初始化2

int* p;
p = (int*)calloc(2, sizeof(int));   //分配内存地址
*p = 1;    //赋值为1
free(p);    //自行分配的内存需要手动释放

指针必须经过分配内存才能再赋值,没有分配内存地址的指针不能直接赋值