c primer plus 阅读共享 -1

来源:互联网 发布:十大网络主播评选结果 编辑:程序博客网 时间:2024/06/05 20:36

*写在前面:关于c c的嵌入式开发也有一段时间了,而且之前热爱的是java 但是语言不是重点,重点是理解计算机的一些底层的东西,可以帮助你在处理复杂问题的时候更多的思路。
本书一共17章,我计划采用17篇以上的博客来对这本书进行一次梳理,跟打算在c上继续发展的朋友一起讨论重温的心得。*

第一章概览

很多书的概览是一个全书的精华的浓缩 如Java编程思想

  • 1.1-1.3节
    出牛逼c很强大很牛逼(不认可 Java 爱好者不接受洗脑)
    C是C++学习的基础,其实可以说C是所有语言的基础甚至是脚本的。

  • 1.4-1.10节
    计算机的基本原理cpu ->由工作区组成 ->工作区由寄存器组成(寄存器记录指令的地址)
    编译器的作用:
    1.将高级语言转换成特定机器识别的机器语言。
    2.通常是连接器将printf等这一类的系统方法转换成对应的语言
    对gcc 新的理解:gcc 不一定需要指定编译(包含 编译跟连接2个动作)之后生成的文件名,他会自动生成a.out 但是下次编译会覆盖。

    总体来说本书的第一章就是扯淡啥也没有可以直接跳过。

第二章 C语言概述

  1. 关于#include 对于编译器而且是一次复制的动作(把标准库中的动作复制到该文件中,使其具备某些能力),所以在工作中不要有太多无效的include

  2. 变量申明的意义:1)方便阅读 2)方便规划 3)拼写错误
    因此变量的命名尤为重要。

  3. % 标准名称为占位符

    总结第二章适合入门的人仔细阅读,复习没有必要

    第三章 数据和C

    值得期待 数据类型中的double 经常出现问题的sizeof 以及_complex 等

    数据存储没有涉及很失落

    1. char 保存数字(0-255) _Bool _Complex(复数) _Imaginary(虚数)
    2. float double 型 由三部分组成 符号 小数部分 指数部分
    3. float 类型的计算比int型的差距很大
    4. %#x显示带有前缀的十六进制
    5. 16位的int 正负2的15次方
    6. short 仅保证不大于int long 不小于int 通常longlong 64位 long 32位 short 16位
    7. long会减慢计算速度 不仅仅是空间问题
    8. 溢出导致会重新计算