嵌入式 C 语言大神的进阶之路

C语言可以说是一种"古老"的编程语言,也是目前嵌入式中主流的编程语言,没有C语言就没有今天的各种嵌入式系统以及操作系统等等。

           

C语言虽然说是编程开发的基础,那到底你掌握到了什么程度呢?

下面我们一起看看C语言熟练到精通的几个层级:

新手村

在大学学过《C语言程序设计》相关的书籍,掌握的不错的获得计算机二级等考证,应付个期末考试,顺便拿个毕业证啥的。

掌握的程度:掌握C语言的基本语法,会鸡兔同笼100条腿的编程,会冒泡排序等。

初入此门

学会使用C语言编写程序、开发一些小项目项目,应该算是把C语言开始用于实际应用中了。

掌握的程度:掌握一个模块的封装与调用、函数接口的声明与定义、C语言的多文件编程,能做一些简单的C语言项目,但需要参考一些案例,

编程的时候大多数时候需要翻书、百度、Google,去寻求程序应该怎么写,对语句、语法的掌握不精通。

登堂入室

熟练掌握C语言编程,精通掌握C语言的各种语法,编写程序时不再需要翻书。

知道C语言编程中可能遇到的各种坑:内存泄漏、段错误,熟练掌握指针、数组、二级指针、指针数组、数组指针等复杂语法的使用。

基本上能够根据自己的思路来设计一些应用程序。

小有所成

经过多年编程实战,已经对C语言编程了如指掌,深谙C语言各种编程技巧和语法,

并从以往的编程经验中不断反思、总结、提炼,编程能力大幅提升。

知道如何使用C语言进行大型项目开发、大型项目管理;

学会从用户需求、软件工程、项目管理的角度去看待C语言,深谙各种编程语言的优劣。

掌握各种开发环境和调试技能,遇到工程问题,能快速定位,具有独立分析问题、快速解决问题的能力。

凡人天花板

在C语言、嵌入式开发领域打磨多年,看问题的视角不再仅仅局限于C语言本身,而是C语言背后的底层运行机制、硬件工作原理。

熟悉一种或几种CPU架构,掌握几种架构的汇编语言,学会使用反汇编去分析C语言底层运行过程;

熟悉编译原理、操作系统、算法、CPU体系结构等全栈知识体系。

在一个公司的项目开发过程中,当工程师遇到久久解决不了的技术难题时,一般就需要这种级别的大佬出来救场了。

大神

专家常有,而大神不常有。

到了这个层次,除了工作经验的积累、勤奋持续地学习和自我激励之外,一般还需要兴趣和天分这种 buffer 加持。

此时,学习嵌入式、C语言不再是应付工作或者项目需要,而是兴趣使然。

兴趣与热爱促使一个人愿意花更多的时间和精力在编程上面,而忽略了身边其他的东西。

他们可能不怎么注意卫生,情商也不太高,但假以时日,他们会从一群人中脱颖而出,渐渐在圈内小有名气,并成为周围人膜拜的对象。

他们不愁工作,仿佛自带光圈,到哪里,哪里一片光明,他们工作的气场很强大,已经超越了嵌入式、C语言本身,

而且说不定会感染到你,让你浑身也充满了能量,跃跃欲试。

和他们在一起工作的心情是愉快的,仿佛在打一场王者高端局,执行到位,配合娴熟,时不时来一波小高潮,让人酣畅淋漓。

所以,要珍惜身边这样的人,或者具有这种潜力的人。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/577572.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第十三节TypeScript 元组

1、简介 我们知道数组中元素的数据类型一般都是相同的(any[]类型的数组可以不同),如果存储的元素类型不同,则需要使用元组。 元组中允许存储不同类型的元素,元组可以作为参数传递给函数。2、创建元组的语法格式&#x…

python:改进型鳟海鞘算法(SSALEO)求解23个基本函数

一、改进型鳟海鞘算法SSALEO 改进型鳟海鞘算法(SSALEO)由Mohammed Qaraad等人于2022年提出。 参考文献:M. Qaraad, S. Amjad, N. K. Hussein, S. Mirjalili, N. B. Halima and M. A. Elhosseini, "Comparing SSALEO as a Scalable Larg…

阻抗控制中的弹簧与阻尼影响分析

阻抗控制是一种机器人控制方法,通过调整机器人的阻抗来实现对机器人的精准控制。在阻抗控制中,弹簧和阻尼是两个重要的参数,它们对机器人的性能和稳定性有很大的影响。 弹簧代表机器人的刚度和弹性,而阻尼代表机器人的阻尼特性&a…

DRF从入门到精通四(视图基类、GenericAPIView的视图扩展类、视图子类、视图集父类、子类)

文章目录 前言一、视图基类APIView基类GenericAPIView通用视图基类 二、GenericAPIView的视图拓展类1.ListModelMixin2.CreateModelMixin3.RetrieveModelMixin4.UpdateModelMixin5.DestroyModelMixin 三、GenericAPIView的视图子类ListCreateAPIViewRetrieveUpdateDestroyAPIVi…

中庸 原文与译文

《中庸》是中国古代论述人生修养境界的一部道德哲学专著,是儒家经典著作之一,原属《礼记》第三十一篇,相传为战国时期子思所作。 其内容肯定“中庸”是道德行为的最高标准,认为“至诚”则达到人生的最高境界,并提出“…

C语言中关于if else的理解

if else我们可以理解为 if(条件1) //如果条件1成立 语句1; //执行语句1 else //如果条件1不成立 语句2; //执行语句2 这是一个经典的if els…

大数据技术学习笔记(十一)—— Flume

目录 1 Flume 概述1.1 Flume 定义1.2 Flume 基础架构 2 Flume 安装3 Flume 入门案例3.1 监控端口数据3.2 实时监控单个追加文件3.3 实时监控目录下多个新文件3.4 实时监控目录下的多个追加文件 4 Flume 进阶4.1 Flume 事务4.2 Flume Agent 内部原理4.3 Flume 拓扑结构4.3.1 简单…

1861_什么是H桥

Grey 全部学习内容汇总: GitHub - GreyZhang/g_hardware_basic: You should learn some hardware design knowledge in case hardware engineer would ask you to prove your software is right when their hardware design is wrong! 1861_什么是H桥 H桥电路可以…

蓝桥杯c/c++程序设计——数位排序

数位排序【第十三届】【省赛】【C组】 题目描述 小蓝对一个数的数位之和很感兴趣,今天他要按照数位之和给数排序。 当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面。 例如&#xff0…

reactive和TypeScript标注数据类型-ts使用方法

一、vite项目中<script setup lang"ts"> : lang"ts" 是表明支持ts校验&#xff08;ts 全称typescript,是es6语法&#xff0c;是javascript的超集强类型编程语言&#xff0c;类似java&#xff0c;定义变量类型后&#xff0c;赋值类型不一致&#xff0…

创建一台可以安装linux系统的虚拟机的流程

1、打开vmware-->点击左上角文件-->新建虚拟机-->自定义 2、默认选择&#xff0c;直接下一步 3、选中稍后安装操作系统&#xff0c;然后下一步 4、选中Linux&#xff0c;然后下拉框选择CentOS7(64位) 5、设置虚拟机名称及存储位置 6、设置虚拟机处理器数量及核心数 7、…

选择排序之C++实现

描述 选择排序&#xff08;Selection Sort&#xff09;是一种简单直观的排序算法。它的基本思想是&#xff1a;每一轮从待排序的数据中选择最小&#xff08;或最大&#xff09;的一个元素&#xff0c;然后与待排序数据的第一个元素交换位置。对剩余未排序的数据重复这个过程&a…

【【IIC模块Verilog实现---用IIC协议从FPGA端读取E2PROM】】

IIC模块Verilog实现–用IIC协议从FPGA端读取E2PROM 下面是 design 设计 I2C_dri.v module IIC_CONTROL #(parameter SLAVE_ADDR 7b1010000 , // E2PROM 从机地址parameter CLK_FREQ 26d50_000_000 , // 50MHz 的时钟频率parameter …

Ensp dhcp全局地址池(配置命令 + 实例)

使用DHCP的好处&#xff1a;减少管理员的工作量、避免输入错误的可能、避免ip冲突 DHCP报文类型&#xff1a; DHCP DISCOVER:客户端用来寻找DHCP服务器 DHCP OFFER:DHCP服务器用来响应DHCP DISCOVER报文&#xff0c;此报文携带了各种配置信息 DHCP REQUEST:客户端配置请求确…

Python机器学习 – 用最小二乘法实现散点图

Python机器学习 – 用最小二乘法实现散点图 Machine Learning in Python – Implement Scatter Plot with Least Squares By JacksonML 1. 最小二乘法定义 最小二乘法是由A.M.Legendre&#xff08;勒让德&#xff09;先生最早提出的。他在1805年&#xff0c;通过《计算彗星轨…

3. 结构型模式 - 组合模式

亦称&#xff1a; 对象树、Object Tree、Composite 意图 组合模式是一种结构型设计模式&#xff0c; 你可以使用它将对象组合成树状结构&#xff0c; 并且能像使用独立对象一样使用它们 问题 如果应用的核心模型能用树状结构表示&#xff0c; 在应用中使用组合模式才有价值。 …

ISP 状态机轮转和bubble恢复机制学习笔记

1 ISP的中断类型 ISP中断类型 SOF: 一帧图像数据开始传输 EOF: 一帧图像数据传输完成 REG_UPDATE: ISP寄存器更新完成(每个reg group都有独立的这个中断) EPOCH: ISP某一行结尾(默认20)就会产生此中断 BUFFER DONE: 一帧图像数据ISP完全写到DDR了 2 ISP驱动状态机 通过camer…

三菱PLC开关量防抖滤波功能块

开关量防抖滤波功能块梯形图和SCL代码请参考下面文章链接: https://rxxw-control.blog.csdn.net/article/details/134936233https://rxxw-control.blog.csdn.net/article/details/134936233三菱PLC防抖滤波的另一种写法如下 https://rxxw-control.blog.csdn.net/article/det…

用CHAT了解更多知识点

问CHAT&#xff1a;什么是硅基生命和碳基生命&#xff1f; CHAT回复&#xff1a;硅基生命和碳基生命是两种理论性的生物体类型&#xff0c;这些生物体主要是由硅或碳元素以及其他元素构成的。 碳基生命是我们当前所熟知的生命形式。碳元素能够形成稳定且复杂的分子&#xff0c;…

推荐几款非常好用的软件,干货满满!

作为一个工具控&#xff0c;一直在社区索取别人的营养&#xff0c;今天在下将我搜集的一些应用贡献出来&#xff0c;推介十几个我常用的软件。一些是其他人反复推介确实经典&#xff0c;另一些是我偶然发现但经过使用感觉非常好用&#xff0c;一并献上&#xff0c;大家可以根据…