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

墨烯的C语言技术栈-C语言基础-018

char c; //1byte字节

8bit比特位

int main()

{

        int a = 10; //向内存申请四个字节,存储10 

        &a;        //取地址操作符

        return 0;

}

每个字节都有地址 而a的地址就是它第一个字节的地址

要先开始调试才可以查看监控和查看内存

左边是地址 中间是内存中的数据 最后面的是内存数据的文本解析(不太准确)

10的十六进制就是0~9 a b c d e f

因为int申请了4个字节所以是32个bit

所以二进制里就是

0000 0000 0000 0000 0000 0000 0000 1010

所以转成为16进制除4

0 0 0 0 0 0 0 a 也就是 00 00 00 0a

至于上面为什么是倒着传的就是个历史原因了 早期计算机系统中,处理器和内存芯片是靠并行线楼传递的 也就是数据传输同时传递多个二进制位来实现的 因此出现了存储时会将最高有效位存储到最低的内存地址 也就先读头部的数据

但是现在的话很多处理器都是使用最低有效位先传输的方式来读写数据

printf("%p\n",&a) // 打印地址 打印的通常是十六进制比较方便一点

但是因为每次打开a变量都是重新创建 所以每次地址都不同

http://www.lryc.cn/news/410296.html

相关文章:

  • C端与B端 - 第一弹 - 理解和区分C端与B端软件开发
  • 穿越多元宇宙的.NET:一场跨平台的星际旅行
  • Python自学第五天
  • Cookie-Monster:一款针对Web浏览器的安全分析与数据提取工具
  • C语言的结构体
  • C语言 写一个函数days,实现某日在本年中是第几天计算。
  • 2-50 基于matlab的遗传模拟退火算法的聚类算法
  • 电脑屏幕录制软件,分享4款(2024最新)
  • 机械学习—零基础学习日志(高数16——函数极限性质)
  • 初识c++——list
  • angular入门基础教程(八)表单之双向绑定
  • 【C++】C++中的find方法介绍
  • JVM—HotSpot虚拟机对象探秘
  • AI测试:人工智能模型的核心测试指标,分类判别、目标检测、图像分割、定量计算分别有哪些指标?
  • 探索LLM世界:新手小白的学习路线图
  • Linux基础命令大全 持续更新中......
  • CPU的起源与发展历程
  • 【C语言】 二叉树创建(结构体,先序遍历,中序遍历,后续遍历)
  • 【和相同的二元子数组】python刷题记录
  • 【单片机毕业设计选题24087】-基于北斗系统的智能路灯
  • [Docker][Docker常用命令]详细讲解
  • onlyoffice用nginx反向代理
  • JavaScript字符串转换成base64编码方法
  • 25.惰性队列
  • ControlNet on Stable Diffusion
  • 源码编译安装,及nginx服务控制、监控块
  • 在react中使用wangeditor富文本
  • 拉提查合创5步玩转git工具协作代码开发
  • React特点
  • 鸿蒙(HarmonyOS)自定义Dialog实现时间选择控件