虽然对于优化 C 代码有很多有效的指导方针,但是对于彻底地了解编译器和你工作的机器依然无法取代,通常,加快程序的速度也会加大代码量。这些增加的代码也会影响一个程序的复杂度和可读性,这是不可接受的,比如你在一些小型的设备上编程,例如:移动设备、PDA……,这些有着严格的内存限制,于是,在优化的座右铭是:写代码在内存和速度都应该优化。
CPlusPlus 设计模式
【设计模式】C++设计模式(全26讲) 单例模式 单例模式(Singleton Pattern,也称为单件模式),使用最广泛的设计模式之一。其意图是保证一个类仅有一个实例,并提供一个访问它的全局访问点,该实例被所有程序模块共享。 定义一个单例类: 私有化它的构造函数,以防止外界创建单例类的对象 ...
Interview C C++
重拾十大经典排序算法
最近在工作中偶然间涉及到数据库的存储和访问,数据库里存放着员工的指纹、年龄以及姓名等信息,当然指纹是通过md5
加密存储的。目前需要对员工的年龄、学历、工作年限等进行排序,如果只有几十个上百个样本,应该不会那么麻烦;关键这是几万名员工的数据,这个量很大,马虎不得。悄悄的告诉你,别惹我,我懂得删库跑路哦。
脑海中对排序的记忆有点模糊,只对「归并排序」印象较为深刻,为了加深理解,重拾「数据结构与算法」,并总结了一下常用的十大经典排序算法,由于平台为linux
,因此代码全部用C++
实现,全部源码均在linux
下编译通过并测试成功,可以作为参考。
Program-C 交叉编译
建立ARM交叉编译环境arm-none-linux-gnueabi-gcc# add2line:将你要找的地址转成文件和行号,它要使用 debug 信息arm-none-linux-gnueabi-addr2line # ar:产生、修改和解开一个存档文件arm-none-linux-gnu ...