嵌入式Linux与物联网软件开发

嵌入式Linux与物联网软件开发

C语言内核深度解析

暂无评价综合评分的显示会考虑用户真实性等多项因素,每部作品出现综合评分的时间不定。

作品简介

本书的原型思想和内容,发源于朱有鹏老师早些年的研发和学习经历,发展于后来数年的线下培训授课经历,并成熟于视频课程《C语言高级专题》(隶属于《朱有鹏老师嵌入式Linux核心课程》系列视频课程的第4部分)。本书正是基于这套视频课程的课件整理而来,参与各章节整理和编写的都是学习了视频课程的学生,由朱有鹏老师和张先凤老师检验并完善成书。这些参与编写的同学有的已经工作数年、有的则尚未走出大学校园。选择他们合作创作本书,就是为了告诉读者:做技术并不要求你天赋异禀,只需要你感兴趣、愿意去探索和练习,你也可以成功。

朱有鹏,互联网课程《朱老师物联网大讲堂》创始人、杰出讲师;51CTO学院杰出讲师、CSDN技术专家、国内物联网教育领域先驱;具有大型企业级项目研发经验和丰富的教学经验。授课风趣幽默、条理清晰、通俗易懂,对知识有自己独到见解。能举一反三,发散学生的思维,指引学生发掘适合自己的学习方法。

张先凤,《朱老师物联网大讲堂》联合创始人、杰出讲师;长期从事企业级物联网项目研发和物联网相关教学工作,对物联网各关键环节技术均有所涉猎,对物联网未来发展和教学有着独特见解,立志长期扎根物联网相关研发和教学工作。

作品目录

  1. 前言
  2. 参与本书整理和编写的学生
  3. 第1章 C语言与内存
  4. 1.1 引言
  5. 1.2 计算机程序运行的目的
  6. 1.3 位、字节、半字、字的概念和内存位宽
  7. 1.4 内存编址和寻址、内存对齐
  8. 1.5 C语言如何操作内存
  9. 1.6 内存管理之结构体
  10. 1.7 内存管理之栈(stack)
  11. 1.8 内存管理之堆
  12. 课后题
  13. 第2章 C语言位操作
  14. 2.1 引言
  15. 2.2 常用位操作符
  16. 2.3 位操作与寄存器
  17. 2.4 位运算构建特定二进制数
  18. 2.5 位运算实战演练1
  19. 2.6 位运算实战演练2
  20. 2.7 技术升级:用宏定义来完成位运算
  21. 课后题
  22. 第3章 指针才是C语言的精髓
  23. 3.1 引言
  24. 3.2 指针到底是什么
  25. 3.3 理解指针符号
  26. 3.4 野指针与段错误问题
  27. 3.5 const关键字与指针
  28. 3.6 深入学习数组
  29. 3.7 指针与数组的天生“姻缘”
  30. 3.8 指针类型与强制类型转换
  31. 3.9 指针、数组与sizeof运算符
  32. 3.10 指针与函数传参
  33. 3.11 输入型参数与输出型参数
  34. 课后题
  35. 第4章 C语言复杂表达式与指针高级应用
  36. 4.1 引言
  37. 4.2 指针数组与数组指针
  38. 4.3 函数指针与typedef
  39. 4.4 函数指针实战1——用函数指针调用执行函数
  40. 4.5 函数指针实战2——结构体内嵌函数指针实现分层
  41. 4.6 再论typedef
  42. 4.7 二维数组
  43. 课后题
  44. 第5章 数组&字符串&结构体&共用体&枚举
  45. 5.1 引言
  46. 5.2 程序中的内存从哪里来
  47. 5.3 堆
  48. 5.4 内存中的各个段
  49. 5.5 C语言的字符串类型
  50. 5.6 字符串和字符数组的细节
  51. 5.7 结构体概述
  52. 5.8 结构体的对齐访问
  53. 5.9 offsetof宏与container_of宏
  54. 5.10 共用体(union)
  55. 5.11 大小端模式
  56. 5.12 枚举enum
  57. 课后题
  58. 第6章 C语言的预处理、函数和函数库
  59. 6.1 引言
  60. 6.2 C语言为什么需要编译链接
  61. 6.3 预处理详解
  62. 6.4 常见的预处理详解
  63. 6.5 函数的本质
  64. 6.6 函数的基本使用
  65. 6.7 递归函数
  66. 6.8 库函数
  67. 6.9 常见的库函数之字符串函数
  68. 6.10 常见的库函数之数学库函数
  69. 6.11 制作静态链接库并使用
  70. 6.12 制作动态链接库并使用
  71. 课后题
  72. 第7章 存储类&作用域&生命周期&链接属性
  73. 7.1 引言
  74. 7.2 概念解析
  75. 7.3 Linux下C程序的内存映像
  76. 7.4 存储类相关的关键字1
  77. 7.5 存储类相关的关键字2
  78. 7.6 作用域详解
  79. 7.7 变量的生命周期
  80. 7.8 链接属性
  81. 课后题
  82. 第8章 C语言关键细节讨论
  83. 8.1 引言
  84. 8.2 操作系统概述
  85. 8.3 main函数返回值
  86. 8.4 argc、argv与main函数的传参
  87. 8.5 void类型的本质
  88. 8.6 C语言中的NULL
  89. 8.7 运算中的临时匿名变量
  90. 8.8 顺序结构
  91. 8.9 程序调试
  92. 课后题
  93. 第9章 链表&状态机&多线程
  94. 9.1 引言
  95. 9.2 链表的引入
  96. 9.3 单链表的实现之构建第一个节点
  97. 9.4 单链表的实现之从尾部插入节点
  98. 9.5 单链表的算法之从头部插入节点
  99. 9.6 单链表的算法之遍历节点
  100. 9.7 单链表的算法之删除节点
  101. 9.8 单链表的算法之逆序
  102. 9.9 双链表的引入和基本实现
  103. 9.10 双链表的算法之插入节点
  104. 9.11 双链表的算法之遍历
  105. 9.12 双链表的算法之删除节点
  106. 9.13 Linux内核链表
  107. 9.14 内核链表的基本算法和使用简介
  108. 9.15 什么是状态机
  109. 9.16 用C语言实现简单的状态机
  110. 9.17 多线程简介
  111. 课后题
  112. 第10章 程序员和编译器的暧昧
  113. 10.1 引言
  114. 10.2 编程工作的演进史
  115. 10.3 程序员、编译器和CPU之间的三角恋
  116. 10.4 像编译器一样思考吧——理论篇
  117. 10.5 像编译器一样思考吧——实战篇
  118. 课后题
  119. 附录 答案
  120. 第1章 课后题答案
  121. 第2章 课后题答案
  122. 第3章 课后题答案
  123. 第4章 课后题答案
  124. 第5章 课后题答案
  125. 第6章 课后题答案
  126. 第7章 课后题答案
  127. 第8章 课后题答案
  128. 第9章 课后题答案
  129. 第10章 课后题答案
  130. 欢迎来到异步社区!
  131. 异步社区的来历
  132. 社区里都有什么?
  133. 灵活优惠的购书
  134. 社区里还可以做什么?
  135. 加入异步