关于数组
数组就是一片连续的内存空间,并且被划分成大小相等的小空间
标准输入输出
标准输入输出,即 scanf 和 printf,这两个函数有太多需要注意的地方
随机数生成
C语言提供两个随机数相关的函数,即 rand 和 srand。主要弄清楚它的伪随机,以及如何产生真正意义上的随机数
进程的虚拟内存空间
操作系统给每个进程营造一种假象,即独占整个内存。在 x86 系统中,为每个进程虚拟出 4G 的内存空间,其中 3G 为用户空间,这块空间各进程相互独立;1G 为内核空间,这块空间进程间共享
第一章:Asio 建立网络连接基本 API
只涉及让客户端和服务端建立连接,数据通信会在第二章讲解,即同步和异步两种方式
生成可执行文件的过程
要想深刻理解从源代码到可执行文件的过程,那就去实现一个编译系统,实现一个简易版的即可。也许我后面有机会去做这个事情,但不知道会不会有这个空闲了
i++ 和 ++i 的区别
i++ 本身并不立即自增,返回值为 i 本身的原始值。++i 本身立即自增,返回值为 i + 1
类型转换
防止隐式类型转换带来的不确定性,显示转换带来的精度丢失问题
变量和常量
数据类型定义字节大小,变量名是内存地址的别名,存储实际数据。这个内存地址是存储实际数据的起始地址,而数据类型的字节大小就表明从这个起始地址开始读取的字节大小,这样就能够找到对应存储的实际数据,不会多读,也不会少读
宏定义和宏函数
主要就是谈一谈宏定义和宏函数容易出错的地方,由于只是单纯的文本替换,且不支持和调试,导致在写代码期间是无法排查的,这就需要我们能够知道哪些地方容易出错,好在后续使用过程中不容易犯错
1111213141518