一、指针变量保存的是地址 不同地址 步长不一样
二、为什么要对malloc强制类型转换?
因为:指针一定要相同(步长)类型赋值 (长给短 会丢失数据 短给长会取多个数据)
例:char *ptr(char *)malloc(sizeof(char)*100)
三、浮点型指针不能和其他类型指针赋值
四、警告:从不兼容的指针类型赋值 说明不同类型的指针不能赋值
五、void * : 空指针,可以保存任何类型指针赋值,但是不能对void *的指针取值,因为void *不确定步长(二义性:编译器有多种选择方式而无法确定)
地址用%p
void *p; p++(默认一个字节)