1.什么是指针
数据在内存中的地址称为指针
2.什么是指针变量
存放了一份数据的地址的变量
- 一个比较高级的变量,一般的变量用来存放值,指针变量用来存放普通变量的地址
例子1:
假设现在有一个int类型变量a=1,地址为0X62FE0C;
还有一个指针变量p,p=0X62FE0C;正好是变量a的地址;
那么称指针变量p指向了普通变量a。
例子2:
假设现在有一个char类型变量b=‘K’,地址为0X62FE03;
还有一个指针变量q,q=0X62FE03;正好是变量b的地址;
那么称指针变量q指向了普通变量b。
3.如何定义一个指针变量
为了表明它是一个指针变量不是普通变量,要在变量名前加星号*
datatype *name;
或者
datatype *name = value;
*表示这是一个指针变量,datatype表示该指针变量所指向的数据的类型 。
例子1:
int a = 1;
//定义一个普通变量a
int* p;
//定义一个指针变量p(定义变量)
p = &a;
//将a的地址放到指针变量p里面(初始化变量)
注意: 指针变量p的类型(int)必须和它要指向的普通变量类型(int)相同,p才能指向a
例子2:
char b = 'K;
//定义一个普通变量b
char* q;
//定义一个指针变量q(定义变量)
a = &b;
//将b的地址放到指针变量q里面(初始化变量)
注意: 指针变量q的类型(char)必须和它要指向的普通变量类型(char)相同,q才能指向b
注意: 定义变量和初始化变量两句可以合成一句
例子1中:
int* p = &a;
例子2中:
char* q = &b;
在定义指针变量 p 的同时对它进行初始化,并将变量 a 的地址赋予它,此时 p 就指向了 a。值得注意的是&#