1.什么是指针
指针: 也是一种变量,是一种特殊的变量(专门用来存放其它变量在内存中地址的)
如果一个变量有多个字节(内存中有多个地址),指针存放的是这个变量的首地址(最低的地址,起始位置的地址)
2.指针的定义
类型 *指针的名字
int p; //定义了 int 类型的指针 *表示 p 是个指针
float *q;//定义了 float 类型的指针 *表示 p 是个指针
char p;//定义了 char 类型的指针 *表示 p 是个指针
3.指针的简单使用
第一种: 定义一个指针并初始化
int a=10;
int *p=&a; // & --> 取地址符号(获取变量 a 在内存中的首地址)
第二种: 定义一个指针没有立马初始化
int a=10;
int *p; //定义了指针 p,p 存放谁的地址目前是不清楚的
p=&a;
4.指针的几种基本运算
第一种: 解引用
通过指针访问指向的变量里面的内容,或者通过指针修改指向的变量
使用解引用运算
*p; //把指针 p 解引用(取出指针 p 指向的地址里面的内容)
第二种:取地址
int a=100;
int *p=&a; //对 a 取地址
小结: 指针是 C 语言提供的一种间接访问变量的方法
5.举例
int a = 100;
int *p = &a;
printf("a = %d\n",*p); //基本算法--解引用 *p
printf("a的地址%p\n",&a); //查看a在内存中的地址
printf("P中存放的地址%p\n",p); //查看*p中存的地址编码
简单来说就是有*号的时候,我们访问的是 p 指针指向的变量,访问 a 的值。没有*号的时候,我们访问的是 p 指针指向的变量存在内存的位置,就相当于变量 a 的门牌号。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于