摘要: https://github.com/lawliet9712/csapp-3e 阅读全文
posted @ 2019-11-22 11:31 lawliet9 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 1. 程序优化等级 假设有源文件 p1.c 和 p2.c,使用 gcc -Og -o p p1.c p2.c 编译生成代码,-Og 会告诉编译器使用符合原始 C 代码整体结构的机器代码优化等级。(PS: -O0 所得到的汇编代码实用价值极小,几乎没有什么用处,建议使用 -Og 或者 -O1(有的较早 阅读全文
posted @ 2019-11-22 11:01 lawliet9 阅读(1486) 评论(0) 推荐(0) 编辑
摘要: 1. 从源文件到可执行程序的过程 这里以最简单的例子 helloworld 为例,新建一个 hello.c 的源文件,添加如下代码 #include "stdio.h" int main() { printf("hello world \n"); return 0; } 使用 gcc -o hell 阅读全文
posted @ 2019-11-13 19:11 lawliet9 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 1. 信息的存储 大多数计算机使用 8 位的块,或者字节,作为最小的寻址内存单位,而非访问内存中单独的位,机器级程序将内存视为一个非常大的字节数组,称为 虚拟内存 ,内存的每个字节都用一个唯一的数字标识,称为它的 地址 。以 C 语言的指针为例,指针使用时指向某一个存储块的首字节的 虚拟地址 ,C 阅读全文
posted @ 2019-11-13 19:09 lawliet9 阅读(632) 评论(2) 推荐(0) 编辑
摘要: 1. 链表 1.1 链表的结构 在 Redis 中,链表的实现是双向链表,除此之外与常规的链表不同的是它还有三个函数指针,dup 函数用于复制链表节点所保存的值,free 函数用于释放链表节点保存的值,match 函数则用于对比链表节点的值和另一个值是否相等。 1.2 总结 2. 字典 2.1 字典 阅读全文
posted @ 2019-05-31 17:24 lawliet9 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 1. 动态字符串( simple dynamic string, SDS) 在 Redis 中,当需要可以被重复修改的字符串时,会使用 SDS 类型 ,而不是 C 语言中默认的 C 字符串类型 。举个例子: 在这个语句中,Redis 会新建一个键值对,其中 key 为一个 字符串,对象的底层实现是一 阅读全文
posted @ 2019-05-31 16:30 lawliet9 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 原文链接 sed命令行格式为: sed [-option] ‘command’ 输入文本/文件 常用选项: -n∶取消默认的输出,使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到屏幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或 阅读全文
posted @ 2019-05-21 11:09 lawliet9 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 原文链接 Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。 但是目前我们使用比较多的是 vim 编辑器。 vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。 相关文章:史上最全Vim快捷键键位图 — 阅读全文
posted @ 2019-05-21 11:06 lawliet9 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 1. 题目 给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素。 说明:你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \1 4 \ 2输出: 1示例 2: 阅读全文
posted @ 2019-05-08 19:17 lawliet9 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 1. 题目 不使用运算符 + 和 - ​​​​​​​,计算两整数 ​​​​​​​a 、b ​​​​​​​之和。 示例 1: 示例 2: 2. 分析 在不采用加法和减法的前提下计算两整数之和,这需要使用与运算符和异或运算符,首先,利用与运算 a & b,计算出 a 和 b 所有进位的位置,然后将其左移 阅读全文
posted @ 2019-05-01 21:50 lawliet9 阅读(308) 评论(1) 推荐(1) 编辑