把之前公众号发的文章重新排版进行整理,方便以后复习也方便大家浏览收藏。 讲这个例子前,咱们先来看一个简单的程序:字符串数组实现数字转字母: #include #include int main(void) { int num = 15 ; //26个字母 const char str[]
刚开始工作的时候实现过公司的一个项目需求,大致描述如下: 实现一个SPI-flash读写程序,目的是要将一个二进制文件写到SPI_FLASH中,最后通过开机读取,实际上这个.bin文件就是uboot和second-boot的结合体。通过SD卡写到SPI-FLASH中就可以脱离SD卡开机启动了
大部分同学学习C语言编程以后不知道能通过什么样的项目才可以锻炼自己的思维功力,2048相信大家都应该熟悉,不管是手机上还是网页版的相信大家都玩过,这个简单的控制台版本的游戏是我曾经在伟易达上班时一个嵌入式应用游戏部门的大佬设计的,适合于喜欢用C语
数据压倒一切。如果选择了正确的数据结构并把一切组织的井井有条,正确的算法就不言自明。编程的核心是数据结构,而不是算法。 ——Rob Pike 说明 本文基于这样的认识:数据是易变的,逻辑是稳定的。 本文例举的编程实现多为代码片段,但不影响描述的完整性。
这是很久之前学习C语言练习的一个小项目。 本小项目最终的实现如下: 输入相应的字符,然后在最下面能够统计错误的个数,输入字符总个数,输入个数以及错误率。 那如何来实现这个小项目呢?规划如下,我们需要大致实现以下三个模块: 1 输入模块 2 显示模块 3
单一职责 单一职责原则:通常的定义是只专注于做一件事和仅有一个引起它变化的原因。对于接口、实现、函数级别往往我们比较容易关注单一职责,大家谈的也比较多,但对于返回值、参数可能不会有太多的人关注。但往往就是这些不符合单一职责原则的设计可能导致
C中大多数缓冲区溢出问题可以直接追溯到标准 C 库。最有害的罪魁祸首是不进行自变量检查的、有问题的字符串操作strcpy、strcat、sprintf 和 gets。一般来讲,象“避免使用 strcpy()和永远不使用gets()这样严格的规则接近于这个要求。 今天,编写的程序仍然利
一般在写一个项目的时候,为了更直观的调试,我们在程序里都会打printf调试语句,随着项目越写越多,printf也会越来越多,但项目准备结尾的时候,这时候开始优化就会发现,你想完全把printf语句都删除了,又怕后面项目出问题找不到问题点在哪里,不删项目一执
点击上方"嵌入式开发圈" 记得关注我们哦! 微信公众号:嵌入式开发圈 关注可了解更多的教程。问题或建议,请公众号留言; 如果你觉得本文对你有帮助,欢迎赞赏 如何对一个有规律的数组表进行位移 在嵌入式项目开发中,LED灯的操作是一定要会的,也是
今天我们来实现一个简单的小项目,在这个项目中,我们将实现一个终端版的简易Linux聊天室。
一文了解C语言实现牛顿迭代法解方程。
什么是回调函数?
做了挺久的开发,对于C这种东西,我不敢说自己已经精通了,毕竟还是有许多细节在学习的过程中会遗忘,然后再通过实践慢慢去一点点捡回来。所以只能算是熟练级别。 Linux内核的实现博大精深,它大部分都是由C语言实现的,从offsetof的实现到后面的co
何谓透传? 根据百度百科给出的定义如下: 透传,即透明传输(pass-through),指的是在通讯中不管传输的业务内容如何,只负责将传输的内容由源地址传输到目的地址,而不对业务数据内容做任何改变。 在现实单片机产品开发过程中,如果存在多个
在Linux的编程里,管理列表的形式,我们可以使用VT100控制码来进行实现。因为VT100控制码在printf函数中就可以设置显示的行和列,这样实现一个列表选择的GUI界面就非常容易。比如Linux内核中的Make menuconfig。 我们可以看到像下面这样的GUI菜单式界面,这样
前面,我们用C语言实现了列表时的学生信息管理系统,那么,window控制台还能做什么好玩的东西呢? http://blog.csdn.NET/morixinguan/article/details/77511003 这节我们来实现一下Window下的弹弹方块。 设计这个小游戏要考虑的问题 (1)方块:方块的大小,方块
上一篇博文的地址: http://blog.csdn.NET/morixinguan/article/details/65494239 这节,我们来看看函数指针与回调函数在Linux内核中的应用。 从上节我们了解到,函数指针和回调函数在开发者和用户之间的一个例子,那么这节,我将引用Linux内核中文件操作结构
今天我们要搞明白的一个概念叫回调函数。 什么是回调函数? 百度的权威解释如下: 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不
这篇文章中的经验教训旨在帮助减少编码,测试和调试三个阶段的bug。
小伙伴们,大家好。 关于C语言和C++的学习路线终于梳理完了。当然我也只能从我曾经近3年的通信公司后台开发经历和目之所及的世界,跟大家聊聊这个话题。 这块的东西很多很杂,不过梳理和总结之后,回过头来看,其实学习思路、学习路线应该还是比较清晰的。由