*号的用法:
①乘法
②定义指针变量
int * p; 定义了一个名字叫p的变量,int *表示变量p只能存放整型变量的地址。
③指针运算符
该运算符放在已经定义好的指针变量的前面:
如果p是一个已经定义好的指针变量,则*p表示以p的内容为地址的变量
④ 注意:int * p; 和 *p有很大区别:
格式上:
int * p; 这句中*和p之间有空格
*p这句中星号和p之间没有空格
含义上:
int * p;表示p是一个只能存放整型变量地址的变量,int *是个整体。
int * p如果要赋值话,也只能写成 :
int * p = &i;(假设i是之前已经定义好的整型变量)
千万不要写成int * p = i;(这是错误的)
同样对于已经有一句int * p;的定义,而没有再赋值给p时,
用*p时要注意两点了:
一、首先这个p要在程序单独赋给一个地址(要么用&整型变量要么调用函数动态分配内存地址)
二、*p等号右端只能整型变量,不能是整型变量地址。
C语言指针学习七
最新推荐文章于 2024-01-08 19:49:46 发布