当前位置: 首页 > news >正文

C语言 指针的新理解

16年写了很多 C 与 C++ 相关的文章,但是后面从事了 Android 开发,就全部删掉了,无意中发现了这篇由还存在草稿箱,索性就找回来吧,也是追忆当年学习的青葱岁月

1.指针就是一个存储了其他变量地址的变量。

  1. 指针存储的是整型二进制数,这个二进制数的含义是:某个变量在内存中的地址
  2. 这个二进制数的大小与计算机系统位数有关,如果是32位机器就是4字节的,如果是64位机器就是8字节的,根据机器字而决定的,用户不能控制。
  3. 指针自身的大小与它指向的类型无关,无非就是表示一个地址而已,地址中存放的具体数据与指针无关

所以指针的默认为

32位系统64系统
in型long型
4byte=32bit8byte=64bit

2.

    float a = 4.0;float * p = &a;

float *”定义了 p 是一个指向了_float_类型的变量的指针。

就是 :p = &a;//将代号为a单元的地址付给p
而 : *p = a;//*p就可以代表a单元中储存的内容

3.多维指针

  1. int * * p2 = &p 定义p2指向 p 的指针
  2. "int *"和 p 的类型定义是相同的,“*”定义了 p2 为一个指针。

4.野指针 & 空指针

  1. 野指针:未被初始化的指针,里面的内容是垃圾地址;
  2. 空指针:被初始化为NULL的指针,里面的地址是0;
http://www.lryc.cn/news/7315.html

相关文章:

  • 【向每个应用View中增加子控件 Objective-C语言】
  • 【FPGA】Verilog:组合电路设计 | 三输入 | 多数表决器
  • 【安全等保】安全等保二级和三级哪个高?哪个费用更高?
  • C++ STL学习记录(v1)
  • 开发中遇到的问题
  • Javascript笔记
  • Elasticsearch(ES)配置及优化
  • 一文看懂Java语言与Java生态圈
  • GitHub 上有什么嵌入式方面的项目?
  • 【C语言进阶】结构体、位段、枚举和联合
  • markdown和latex常用部分参考@注脚@链接跳转@csdn
  • Java 在二叉树中增加一行
  • kubernetes(k8s) 知识总结(第2期)
  • windows-Mysql的主从数据库同步设置
  • Docker逃逸
  • k8s项目部署
  • Modbus通信协议学习笔记
  • ubuntu重启、关机命令
  • Xshell 7 连接云服务器的步骤和出现的错误
  • Python多进程同步——文件锁
  • 实现 element-plus 表格多选时按 shift 进行连选的功能
  • 华为OD机试真题JAVA实现【考古学家】真题+解题思路+代码(20222023)
  • Spring3之基于Aspect实现AOP
  • buctoj-寒假集训进阶训练赛(二十二)
  • 华为OD机试真题JAVA实现【静态扫描最优成本】真题+解题思路+代码(20222023)
  • 汽车装配工厂立库物料运送线PLC无线应用
  • Python雪花代码
  • Numpy基础与实例——人工智能基础
  • MQTT的工作原理
  • iOS开发:UINavigationController自定义返回按钮,系统导航支持侧滑返回