在C语言中 * 号有三个用途
- 乘号,用做乘法的运算,i.g: 5*6
- 申明一个指针,在定义指针变量时使用,i.g: int *p;
- 间接运算符,取得指针所指向的内存中的值,i.g: printf("%d", *p);.
Question: 指针用来存储内存地址的,为什么还要分不同类型的指针?
Answer: 因为指针变量存储的是一个内存空间的首地址(第一个字节的地址),但是这个空间占用了多少字节,用来存储什么类型的数,则是由指针的类型来标明的. 这样系统才知道应该取多少个连续内存作为一个数据.