c语言的指针思维导图,指针基础知识(含思维导图)

C语言中指针

e0b4f4666ecb9679efc88634b5267417.png

一、指针的定义及大小

①指针是指地址(地址是常量);此处的地址指计算机存储设备中对于内存单元的编码(相当于门牌号);

②指针大小:4字节或8字节;32位平台是4字节;64位平台是8字节;

二、使用指针的目的

目的:通过指针去访问内存单元;目的是不看起来很简单?虽然目的很简单,但是请注意使用指针的方法(划重点哦);

三、指针变量

①定义:存放变量地址的变量(是不是看着很绕口?);

int main()

{

int x;//创建变量

int *p=&x;//此刻的p就是指针变量

//p是创建的变量,它的类型是int型指针,然后将变量x的地址赋值给p;

return 0;

}

②引用操作:

#include

int main()

{

int x = 0;

int *p = &x;

*p = 10;// *p指解引用操作;通过p存储的地址找到x并且赋值10;

//以上就是指针的简单应用;

return 0;

}

四、指针类型

首先说明:指针类型决定了指针访问内存单元时的字节数;

①常用整型指针:

de42e9f85ccbeb5b38a50b75890ffaa3.png

②常用浮点型指针:

d3d5043fb2b7ce94aa9b5749a2c2b9d0.png

③常用构造类型指针:

struct stu

{

char name[20];

int age;

};

int main()

{

int *arr[10];//指针数组

int (*arr)[10];//数组指针

struct stu *p;//结构体指针变量

return 0;

}

④函数指针:

定义:通过调用函数指针间接访问某函数;

函数类型 (*指针名字) (函数参数);

函数类型指原函数的类型、函数参数也是原函数参数;原函数无参数直接()如果有参则(int, int)

例如函数指针:void (*p)(int, int);

五、NULL指针

NULL指针定义:*#define NULL ( (void )0)

它作为一个特殊的指针变量,表示不指向任何东西。

使用:在你定义指针的时候不知道赋什么值,此时应该赋NULL。

六、指针相减

int main()

{

int a = 10, b = 6;

int *ptr = &a;

int *p = &b;

//p-ptr是p指针和ptr指针之间的元素个数,下图中p-ptr为5;

return 0;

}

4a056f9949b3df4e6936649f3fe4bb30.png

七、二级指针

二级指针就是一级指针的指针;

#include

int main()

{

int a = 10;

int *p = &a;

int **pp=&p;

//二级指针就是存储一级指针的地址,

//通过二级指针访问一级指针及它所指向的值;

printf("%d",**pp);//*pp获得一级指针的值

//再通过一个解引用找到一级指针所指向的值

return 0;

}

这是基础篇,下篇介绍进阶内容;

希望大家三连哦;

标签:10,return,变量,导图,基础知识,int,main,指针

来源: https://blog.csdn.net/C_Karen/article/details/112972977

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值