这是道哥的第014篇原创 一、前言 如果问C语言中最重要、威力最大的概念是什么,答案必将是指针!威力大,意味着使用方便、高效,同时也意味着语法复杂、容易出错。指针用的好,可以极大的提高代码执行效率、节约系统资源;如果用的不好,程序中将会充满陷阱、漏洞。 这篇文章,我们就来聊聊指针。从最底层的内存存储 Read More
加密、证书、签名,这么多的名词和概念,关系暧昧,这篇文章帮你完全梳理! Read More
这是道哥的第011篇原创 前言 前一段时间因为工作需要,我对ARM模拟器进行了一番调研。调研目的是:由于项目参与人员比较多,如果人手一块ARM开发板,资源比较紧张,希望能够用模拟器来代替。 在调研期间,花费了很多时间去查资料、测试验证。在实际验证的时候,发现一个现象:很多文章虽然给出了或简单、或详细 Read More
这是道哥的第010篇原创 前言 这篇文章讲解的知识点很小,但是在一些编程场合中非常适用,大家可以把这篇短文当做甜品来品味一下。 地球人都知道,do-while语句是C/C++中的一个循环语句,特点是: 至少执行一次循环体; 在循环的尾部进行结束条件的判断。 其实do-while还可以用在其他一些场合 Read More
这是道哥的第009篇原创 一、前言 在嵌入式开发中,C/C++语言是使用最普及的,在C++11版本之前,它们的语法是比较相似的,只不过C++提供了面向对象的编程方式。 虽然C++语言是从C语言发展而来的,但是今天的C++已经不是当年的C语言的扩展了,从2011版本开始,更像是一门全新的语言。 那么没 Read More
这是道哥的第008篇原创 一、前言 上篇文章我们聊了gdb的底层调试机制,明白了gdb是利用操作系统提供的系统信号来调试目标程序的。很多朋友私下留言了,看到能帮助到大家,我心里还是很开心的,其实这也是我继续输出文章的最大动力!后面我会继续把自己在项目开发中的实战经验进行总结。 由于gdb的代码相对复 Read More
【这篇文章说了啥】 这篇文章主要介绍了在生产者-消费者模式中,生产和消费之间有大量数据需要交互时的一个高效率的解决方案。 【问题引入】 1. 问题场景 在设计模式中,生产者-消费者模式肯定是排在前面位置的,在实际开发过程中,也常常需要使用这个模式。 在讲解设计模式的书籍中,只会从抽象的角度对生产者- Read More
这篇文章讲解的知识点很“小”,但是在C和C++的混合编程中非常重要。 因为我们在写应用程序时,经常利用到第三方的程序。 如果我们的代码用C,但是第三方代码是C++; 或者我们的代码用C++,而第三方的代码是C, 那么在整合的时候就需要仔细一点了。 一、C调用C++中的函数 1. 被调用C++代码中的 Read More
【为啥写这篇文章】 在嵌入式应用的开发过程中,日志系统是非常重要的!特别是在生产环节出现了偶发性的、与当前的执行环境相关的bug的时候,如果没有日志系统来追踪问题,很难进行问题重现。 因此,实现一个自己的日志系统是很有帮助、很必要的。在软件模型上,一般是把日志系统编译成库文件。应用程序直接调用库中提 Read More
一、概念 数据字典有两种形式 1. 把主体的属性代码化放入独立的表中,不是和主体放在一起,主体中只保留属性的代码。这里属性的数量是不变的,而属性取值的数量可以是变化的。 2. 用一个表来放结构相同的所有属性信息,不同属性的不同取值统一编码,用“类型”来区别不同的属性,主体中保留属性代码的列表。这样主 Read More