C语言中指针

一、指针的定义及大小

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

②指针大小: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;

}

四、指针类型

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

①常用整型指针:

②常用浮点型指针:

③常用构造类型指针:

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;

}

七、二级指针

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

#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

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

  1. 51单片机中断的调用寄存器组(PSW)的作用,以及汇编堆栈的作用,堆栈指针的SP的使用方法,RAM的运行和ROM在单片机具体运行和C语言的优势和中断,定时器基础知识(上)

    一,堆栈在汇编的作用,以及PUSH ACC 和 PUSH PSW 通过最简单的8051单片机RAM的分配可知,单片机从烧程序到达到一定的工作过程.首先明白为什么要引如"烧"写的过程 ...

  2. java类与接口思维导图_详解java接口基础知识附思维导图

    接口: 官方的含义是---->java接口是一系列方法的声明,是一些方法特征的集合 疑问: 那为什么不用抽象类呢?把他们共有的方法集合起来放在一个抽象类里面,同样可以调用哇,但是反过来想一想如果 ...

  3. c语言 二进制输出_程序员入门C语言,需要掌握的4个基础知识

    C语言是当前所有开发技术中使用较为广泛的一门语言,从它诞生之日起就深受程序员的喜爱.随着C语言的普及,后来的开发语言都或多或少地借鉴或遵循了它的一些模式.另外,C语言是计算机编程领域中使用最早的高级语 ...

  4. 数据结构:图的基础知识

    文章目录 图 图论基础 图的定义 图的基本概念 图的存储结构 邻接矩阵 邻接表 图的创建和销毁* 图的遍历算法 深度优先搜索遍历(DFS) 广度优先搜索遍历(BFS) 最小生成树 Prim 算法 Kr ...

  5. 图神经网络基础知识——初识图学习

    初识图学习 一.简单的图基础 什么是图? 生活中的图 图的分类 同构图.异构图举例 图的度和邻居 图的表示 邻接矩阵 邻接表 边集 图的特征 二.图学习初印象 图学习的应用 节点级别任务 金融诈骗检测 ...

  6. C语言山行组合数,高中排列组合基础题-(含答案).doc

    排列.组合问题基本题型及解法 同学们在学习排列.组合的过程中,总觉得抽象,解法灵活,不容易掌握.然而排列.组合问题又是历年高考必考的题目.本文将总结常见的类型及相应的解法. 一.相邻问题"捆 ...

  7. 要想学好C语言,你必须得懂的基础知识大全!本文将带你深度学习

    很多初学者都会问我,"我想学C,该怎么开始呢?",今天我们就来聊一聊,属于初学者必须懂的知识,希望小伙伴们,能够牢记基础知识,唯有不断努力 才能更加顺利. 基本常识 计算机语言: ...

  8. 图神经网络 Graph Neural Networks 系列(1)图神经网络基础知识介绍

    图是一种对一组对象(节点)及其关系(边)进行建模的数据结构.近年来,利用机器学习分析图的研究越来越受到重视,因为图具有很强的表现力,即图可以作为社会科学(社会网络)和自然科学等多个领域中大量系统的表示 ...

  9. 烘焙贴图(一)——贴图的基础知识

    烘焙贴图,其实就是将模型与模型之间的光影关系通过图片的形式转换出来,这样就形成了一种贴图,将这种贴图控制在模型上,可以得到一种假的但很真实的效果. 烘焙的贴图有:法线贴图,OCC或ao贴图,转换贴图, ...

  10. C语言if条件表达式只能是,小白基础知识必备|| 条件表达式

    原标题:小白基础知识必备|| 条件表达式 if-else 条件表达式 简单来说,条件表达式使我们可以测试变量. 打个比方,我们可以这样说: "假如变量的值等于 7,就执行这样那样的操作.&q ...

最新文章

  1. android rom 评测,腾讯定制Android 4.0 ROM评测 附tati刷机教程
  2. 1.10.Flink DataStreamAPI(API的抽象级别、Data Sources、connectors、Source容错性保证、Sink容错性保证、自定义sink、partition等)
  3. 批评代码而不是人!15年程序员的职场箴言
  4. python 元类 type_Python 使用元类type创建类对象常见应用详解
  5. 用统计功能计算机计算js,js实现计算器功能
  6. c语言建立动态链表ppt,C语言链表讲解.ppt
  7. 计算机本地磁盘加密,我可以将onedrive本地文件夹转移到BitLocker加密文件夹吗?...
  8. 指数分布的定义形式及应用
  9. lion.ec开源框架简介(原创)
  10. python——学习登录用户和密码的判断——1
  11. 加密狗登录PHP开发,C# 使用加密狗登录 示例源码
  12. 长沙南站启动脸部识别验证验票;奔驰和美国无人机物流公司公司合作用无人机配送商品...
  13. bam获取序列_如何从BAM文件中提取fastq
  14. 实用技巧(二)——文本工具、自由变换
  15. C语言详解系列——函数的认识(4)函数的声明与定义,简单练习题
  16. [R语言基础]——数据处理实例
  17. 如何成为一个牛逼的程序猿
  18. 初学者用Eclipse和IDEA哪个好用一点?
  19. 大专毕业后在富士康当生技
  20. surface pro 7键盘只能识别功能区,无法输入字母和数字

热门文章

  1. 五大媒体播放器的Andr​​oid
  2. PHP将汉字转化为拼音
  3. 微信公众平台开发进阶篇资源集锦
  4. mysql触发器 实例_mysql触发器的三个例子
  5. 局域网共享工具_Win10局域网共享开启工具
  6. GooFlow流程设计工具结合Easyui设计工作流
  7. 《浪潮之巅》11~14章
  8. 2021中国WMS市场发展趋势和特点
  9. python进阶中文版_GitHub - lcm2179/Intermediate-Python: 《Python进阶》(Intermediate Python 中文版)...
  10. stm32-sbus数据接收,并通过CAN转发给车辆控制