目录

联合 union 从来没见过捏

联合(union)是一种数据类型,特点是:

数据对齐

对齐规则

在机器级程序中将控制与数据结合起来

void* 特殊指针

指针类型的强制转换

函数指针


要记得东西实在太多了,分出来一些

联合 union 从来没见过捏

书 p186

联合(union)是一种数据类型,特点是:

  (1)能在同一个存储空间中储存不同的数据类型(注意不是同时存储)

  (2)联合只能储存一个值,这一点与结构是不同的。

  (3)在联合中,一次只储存一个值,即使有足够的空间,也不能同时储存多个值。例如同时存储一个char类型值和一个int类型的值。所以说,在设计编写程序时,就需要明确注意当前储存在联合中的数据类型。

  (4)编译器需分配足够的空间以便能储存联合声明中占用最大字节的类型

数据对齐

对齐规则

对于无法满足对齐条件的,编译器会在字段的分配中插入间隙,或者在字段的末尾进行填充

书上讲得一点都不清楚

参考数据对齐详解 - bakari - 博客园

在机器级程序中将控制与数据结合起来

void* 特殊指针

指针类型的强制转换

函数指针

CSAPP第三章(续)相关推荐

  1. 程序员编程艺术:第三章续、Top K算法问题的实现

    程序员编程艺术:第三章续.Top K算法问题的实现 作者:July,zhouzhenren,yansha.     致谢:微软100题实现组,狂想曲创作组.     时间:2011年05月08日    ...

  2. Csapp 第三章阅读以及思考

    前言 csapp 第三章从 CPU 的架构入手,了解处理器如何处理指令,并将C程序翻译成汇编,根据汇编和cpu结构讲解你的程序是如何运行的,并讲解常用的数据结构是如何在内存中存储和表示的,通过这些了解 ...

  3. CSAPP第三章——程序的机器级表示:学习笔记总结

    花了半个多月,补完王爽老师的汇编语言后,跟着CMU的视频课+课本,学完了第三章的知识,最深的感触就是CSAPP无论是视频还是书的质量都非常的硬,不愧它的盛名.(lab6和课后的家庭作业还没做,之后再补 ...

  4. 第三章 续:时间控件(TimePicker)

    上一章,介绍了datetimepicker使用, 然而,当只需要时分秒的时候,它并不怎么理想,因此又找了一个单独的时间控制插件 现在介绍一个timepicker,用法差不多,但是它只是基于bootst ...

  5. 北邮CSAPP第三章之数据格式与程序编码

    程序的机器级表示 本章学习内容:汇编代码 高级语言屏蔽了程序的机器级实现. 用高级语言编写的程序可以在不同的机器上运行,汇编代码则于特定机器密切相关 学习汇编代码能理解编译器优化能力,并分析代码中隐含 ...

  6. CSAPP第三章之条件分支的两种实现方式

    有关博文请移步:为什么我不喜欢用if语句 使用条件控制来实现条件分支 将条件表达式和语句从C语言翻译成机器代码,最常用的就是结合有条件和无条件的跳转 (有些条件可以用数据的条件转移来实现,而不是用控制 ...

  7. 【仅供参考】csapp第三章课后习题答案(欢迎批评指正)

    3.67 [答案] A. %rsp + 24 z              %rsp + 16 &z            %rsp + 8 y             %rsp     x  ...

  8. 程序员编程艺术:第三章、寻找最小的k个数

    程序员编程艺术:第三章.寻找最小的k个数 作者:July. 时间:二零一一年四月二十八日. 致谢:litaoye, strugglever,yansha,luuillu,Sorehead,及狂想曲创作 ...

  9. IA-32系统编程指南 - 第三章 保护模式的内存管理【1】

    第三章 保护模式的内存管理[1] [作者:lion3875 原创文章 参考文献<Intel 64 and IA-32 system programming guide>] IA-32保护模 ...

最新文章

  1. y电容如何选型_陶瓷气体放电管,如何选型?
  2. [转]几种调用WebService的方法
  3. ConcurrentHashMap的源码分析-JDK1.7和Jdk1.8版本的变化
  4. struts2中jsp页面上验证码的生成
  5. 【视频内含福利】原来手机套壳视频是这么做出来的
  6. oracle undo段的作用,Oracle数据库中Undo数据段的作用及类型
  7. linux编译安装wine,Ubuntu 13.10 编译安装Wine 1.7
  8. Linux 实现一个带有重定向功能的shell
  9. SpringMVC相关面试题总结
  10. 读书笔记:《产品经理手册》(第4版)
  11. 【RocketMQ】从零搭建一套RocketMQ监控(rocketmq-exporter + Prometheus + Grafana)
  12. Matlab 元胞数组和结构体
  13. ORB-SLAM2跑TUM RGBD数据集时灰屏卡住
  14. 绕过阮一峰网络日志的反广告过滤脚本
  15. markdown字体大小设置_Markdown 颜色和字体
  16. C++使用fill初始化二维数组
  17. 混沌映射与动态学习的自适应樽海鞘群算法-附代码
  18. 适合程序员表白的情话【保你脱单】
  19. 西门子uss通讯实例_西门子PLC使用串行接口 (USS) 通信
  20. SAP 银企直连 电子回单

热门文章

  1. Crowd 安装备注
  2. 基于JavaWeb的收银台系统
  3. Proxmox VE 7.2 iso 镜像重置 pve root密码
  4. 每天学一点英文:Espresso 20210906
  5. php session 功能,php4的session功能评述(二)
  6. 记一次oracle HAIP引发的数据库问题
  7. 【算法记录】梅式砝码问题
  8. QT QMdiArea的介绍
  9. ISP图像质量调节介绍
  10. 四种形态图解_图解缺口理论,附实例