前言+ 这里先插一点题外话,在C语言中,实现封装、继承、隐藏、多态等等特性,是完全没有问题的。但是在使用过程中,必定是不如自带这些特性的语言方便好用的,比如C++\java等。 一旦要通过C语言来实现各种设计模式,必定会在严谨地维护类层次上造成非常繁琐
科普文,给大家介绍观察者模式的使用场合及其优缺点。 模式动机 + 观察者模式是比较常用的设计模式之一,尤其是系统里面涉及到多个复杂子系统时,经常会使用到。 它就像系统里面某个子模块的跑腿,一旦该子模块发生变化,它就要为这个子模块通知其他的子模块
时间、空间复杂度比较 查找算法 平均时间复杂度 空间复杂度 查找条件 顺序查找 O(n) O(1) 无序或有序 二分查找(折半查找) O(log2n) O(1) 有序 插值查找 O(log2(log2n)) O(1) 有序 斐波那契查找 O(log2n) O(1) 有序 哈希查找 O(1) O(n) 无序或有序 二叉查找
关注、星标公众号 ,直达精彩内容 抛砖引玉 C语言负数除以正数,与正数除以负数或者负数除以负数的余数和商,正负有谁定呢? -3 / 2 = ?; -3 % 2 = ?; 3 / (-2) = ?; 3 % (-2) = ?; (-3) / (-2) = ?; (-3) % (-2) = ?; 前提假设 假定我们让 a 除以 b,商为 q
工作后,经常会有各种各样周报、月报、年报之类的总结。 虽然我们可能会一定程度上去排斥这种规则,但是不得不承认的就是这种做法还是能很好的让我们对自己一个阶段的工作进行反思。 只有不断思考、反思,才能发现自己的不足、工作上的不足,才能不断地提高自
关注、星标 嵌入式客栈 ,干货及时送达 [导读] 嵌入式er编程,一些常见的宏应该掌握如何去使用,会带给你很多有用的功能。关于标准定义宏的详细示例,见今天推送的第二篇转载文章,总结的很清晰。本文特别示例了一下如何利用日期时间宏自动内置编译时间信息进
以前也零零碎碎发过一些排序算法,但排版都不太好,又重新整理一次,排序算法是数据结构的重要部分,系统地学习很有必要。 时间、空间复杂度比较 排序算法 平均时间复杂度 最差时间复杂度 空间复杂度 数据对象稳定性 冒泡排序 O(n2) O(n2) O(1) 稳定 选择排序
事件 去年年底,公司来了一位工作十余年的工程师,据说软件硬件都会,应聘的岗位是XX算法工程师。比较巧的是,这位工程师是我上一家公司隔壁部门的同事。 我们均来自大厂,但是是国企,二线城市。所以尽管他在前公司工作十余年了,在国企这个环境下,其工资在
关注、星标公众号,不错过精彩内容 转自:C语言Plus 从学习C语言开始就一直写个一个函数,那么你知道它的标准写法什么什么样吗? main函数,又称主函数,是程序执行的起点,我们平时写的main函数是什么样呢? 1,是这样? main(){} 2,还是这样? void main(){}
来自公众号:筑梦编程 c语言入门 C语言一经出现就以其功能丰富、表达能力强、灵活方便、应用面广等特点迅速在全世界普及和推广。C语言不但执行效率高而且可移植性好,可以用来开发应用软件、驱动、操作系统等。C语言也是其它众多高级语言的鼻祖语言,所以说学
今天给大家带来了5个C语言小题目,都是从国内外企业面试题中精选的,并且有的进行了一定的修改,难度有所提升。应该来说,这5道题都有不同程度的陷阱,一不小心就容易掉到坑里,同时也涉及了很多C语言一些比较细的知识点,对C基础的掌握程度是个不错的检验,
点击上方「嵌入式大杂烩」,选择「置顶公众号」第一时间查看编程笔记! 宏打印函数 在我们的嵌入式开发中,使用printf打印一些信息是一种常用的调试手段。但是,在打印的信息量比较多的时候,就比较难知道哪些信息在哪个函数里进行打印。 特别是对于异常情况
整理自网络,整理/排版:付斌 01 为什么C语言不会过时 评价任何一门编程语言,都是招人骂的。永远是这样。就像是春寒料峭的季节, 街上穿棉袄和穿单衣的擦肩而过,双方一定是同时在心里出现了两个字:“傻逼!”这个在心理学上有个专业的名字:叫做“二逼”现
前言 通俗的讲,适配器模式是将一个类的接口转换成客户希望的另外一个接口,在我们编写程序的时候,尤其是在我们使用到单片机做项目的时候,经常会用到。 但是往往我们做项目写程序的时候,并没有想到那么多,如果在不带操作系统的情况下,想要整个框
本文将带您了解一些良好的和内存相关的编码实践,以将内存错误保持在控制范围内。内存错误是 C 和 C++ 编程的祸根:它们很普遍,认识其严重性已有二十多年,但始终没有彻底解决,它们可能严重影响应用程序,并且很少有开发团队对其制定明确的管理计划。但好消
谁叫你不幸生在中国了? ——何祚庥(中国科学院院士) 这是一本给非计算机专业的大学生的C语言的书。“我不是学计算机的,为啥要学C语言?”这个问题每年在中华大地都会被问上几百万次。被问的对象可能是老师,也可能是师哥师姐。师哥师姐往往也就是故作明了
你知道怎么学习单片机C语言吗?很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。
你知道如何学好单片机吗?无论是作为一名业余的电子爱好者还是一名电子行业的相关从业人员,掌握单片机技术无疑可以使您如虎添翼,为您的电子小制作或者开发设计电子产品时打开方便的大门!学习单片机技术有一定的难度,不花费一番努力是很难学会的,但是只要不断努力就一定能成功,套用一句广告歌词:努力总有回报!
什么是51单片机?应该如何学习?作为一名入门级的工程师,万事开头难,只要知道学习51单片机需要学习哪些知识点就万事大吉了。然后再系统的将知识点全部掌握即可。那么我们一起看看吧,到底要学习哪些呢?
大小端的问题在很多面试笔试中都会遇到,最直接的考察是,笔试的时候,让你写一个代码,如何确定当前系统是大端还是小端的。 什么是大端和小端呢? 大端: 高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。(CPU对操作数的存放方式是从高字节到