摘要: GCC GCC编译流程浅析 序言 对于大多数程序员而言,大家都知道gcc是什么,但是如果不接触到linux平台下的开发,鲜有人真正了解gcc的编译流程,因为windows+IDE的开发模式简直是一条龙全套服务,开发者只需要关系代码逻辑与功能实现即可,但是,在享受便利的同时,必然也牺牲了一些灵活性。 阅读全文
posted @ 2019-03-04 17:52 牧野星辰 阅读(1018) 评论(0) 推荐(0) 编辑
摘要: C++ STL unordered_map用法 在C++11中,unordered_map作为一种关联容器,替代了hash_map,unordered_map的底层实现是hash表,所以被称为无序关联容器。 不管是map还是unordered_map都是一种 key map(value) 映射的容器 阅读全文
posted @ 2019-03-04 17:17 牧野星辰 阅读(34320) 评论(1) 推荐(4) 编辑
摘要: 哈希表 先从数组说起 任何一个程序员,基本上对数组都不会陌生,这个最常用的数据结构,说到它的优点,最明显的就是两点: 简单易用,数组的简易操作甚至让大多数程序员依赖上了它,在资源富足的情况下,我们甚至会无意识地忽略其它更适用的数据结构而使用数组(别说你没这么干过..)。 查找的快速性,数组中查找元素 阅读全文
posted @ 2019-03-04 17:06 牧野星辰 阅读(4050) 评论(0) 推荐(0) 编辑
摘要: 栈帧结构与函数调用约定 栈,是一种先入后出的数据结构,就像我们堆放书籍一样,先放的在最底下,后放置的在顶上,当我们要取的时候就是拿最上面一本,即最后放置的那一本。即FILO(first in last out)。 对大多数的应用程序员来说,栈就是这么一个数据结构的概念,而对于嵌入式工程师来说,栈还代 阅读全文
posted @ 2019-03-04 16:20 牧野星辰 阅读(1952) 评论(0) 推荐(0) 编辑
摘要: C/C++函数调用时传参过程与可变参数实现原理 C语言的经典swap问题 在学习C语言的时候,我们大都遇到过一些经典例题,这些经典例题背后所代表的是往往是C/C++背后的一些运行原理,比如下面这个示例: 请问下面这个swap()函数能否用来进行值交换? void swap(int x,int y) 阅读全文
posted @ 2019-03-04 15:59 牧野星辰 阅读(7474) 评论(2) 推荐(2) 编辑
摘要: C++中string的实现原理 背景 当我刚开始学习C++,对C还是有一部分的了解,所以以C的思维去学C++,导致我很长一段时间的学习都处于一个懵逼的状态,C++的各种特性,标准库,模板还有版本的迭代,简直是欲仙欲死。 后来在论坛中就有热心的朋友们出招了:你得放弃C的思维去学C++!!嗯,说得好有道 阅读全文
posted @ 2019-03-04 15:22 牧野星辰 阅读(11395) 评论(3) 推荐(4) 编辑
摘要: C++构造函数的理解 相对于C语言来说,C++有一个比较好的特性就是构造函数,即类通过一个或者几个特殊的成员函数来控制其对象的初始化过程。构造函数的任务,就是初始化对象的数据成员,无论何时只要类的对象被创建,就会执行构造函数。 构造函数的语法 构造函数的名字必须和类名相同,与其他函数不一样的是,构造 阅读全文
posted @ 2019-03-04 15:07 牧野星辰 阅读(17819) 评论(1) 推荐(5) 编辑
摘要: C语言强、弱符号,强、弱引用 符号定义 在编程中我们经常碰到符号重复定义的情况,当我们在同一个作用域内重复定义同一个变量时,有时是因为误写,有时是文件之间的冲突,编译器的处理方式就是报错: redefinition of 'xxx' 注意,这里针对于同一作用域才会有冲突,如果是不同作用域,比如全局和 阅读全文
posted @ 2019-03-04 14:51 牧野星辰 阅读(7920) 评论(2) 推荐(3) 编辑
摘要: 不同平台下int类型、指针类型的数据大小 对于int类型数据和指针类型数据的大小,是非常基础的问题。 在一个具体的平台上,确定他们最好的办法就是使用sizeof(type)对其进行判断,返回当前数据类型的大小。 在不同的平台下,int类型和指针类型的数据类型大小时怎样的呢?如果要给出一个统一的答案, 阅读全文
posted @ 2019-03-04 12:27 牧野星辰 阅读(9083) 评论(3) 推荐(5) 编辑
摘要: C语言数组与指针的那些事儿 在C语言中,要说到哪一部分最难搞,首当其冲就是指针,指针永远是个让人又爱又恨的东西,用好了可以事半功倍,用不好,就会有改不完的bug和通不完的宵。但是程序员一般都有一种迷之自信,总认为自己是天选之人,明知山有虎,偏向虎山行,直到最后用C的人都要被指针虐一遍。 指针 首先, 阅读全文
posted @ 2019-03-04 12:00 牧野星辰 阅读(10031) 评论(2) 推荐(7) 编辑