首页编程语言c语言 编程思想

c语言 编程思想

cysgjjcysgjj时间2024-04-28 19:41:31分类编程语言浏览27
导读:请问大佬们,学习单片机需要把C语言学好,再学单片机吗?为什么要精通C语言?程序员有必要学习C语言吗?请问大佬们,学习单片机需要把C语言学好,再学单片机吗?没有先后之分,同时学就好,实践中提高最快。建议你某宝上买个开发版,先从汇编学起,学完汇编,再理解C相当easy了。现在很多开发环境都支持C,学一段时间汇编的目的在于帮助你更深入理解C……...
  1. 请问大佬们,学习单片机需要把C语言学好,再学单片机吗?
  2. 为什么要精通C语言?
  3. 程序员有必要学习C语言吗?

请问大佬们,学习单片机需要把C语言学好,再学单片机吗?

没有先后之分,同时学就好,实践中提高最快。建议你某宝上买个开发版,先从汇编学起,学完汇编,再理解C相当easy了。现在很多开发环境支持C,学一段时间汇编的目的在于帮助你更深入理解C,实际开发时用C更方便,但是编译器有时候没那么聪明,不能正确翻译你的想法,如果你懂一点汇编,遇到这类复杂问题时,你解决起来就会轻松一点。

你好!作为学过单片机过来人你这个问题我可以来回答。首先肯定一点的是学习单片机不需要先学好C语言再去学单片机,而是在学习单片机的过程中可以促进C语言的学习!

我在学习单片机时对C语言也只是了解其皮毛,我对C语言比较深刻的了解是在学习单片机过程中逐渐形成的。通过编写简单的小程序慢慢验证C语言语句的各种执行情况,比如在学习for循环语句时,我们可以用流水灯的循环来验证;学习数组时我们可以用数码管来验证;学习c语言指针时我们可以用LCD1602液晶让其显示字符串来验证等等。那怕就是C语言的复合语句表达式,也是可以用一个或者两个LED灯显示亮灭情况来验证这个句语的逻缉关系的。

c语言 编程思想
图片来源网络,侵删)

所以单片机的学习和C语言的学习可以是同时进行的,两者是互相促进相辅相承的关系,单片机本身及其外设可以用C程序控制,而C程序控制单片机及其外设反而又使我们对硬件的进一步加深了理解,在两者同时学习的过程中我们又锻炼了对程序调试的能力,也就是提升了我们发现问题解决问题的能力!所以我建议学习单片机的朋友在学习C语言和单片机的选择上要同时进行,以上就是我学习单片机时的体会,希望能给朋友们有借鉴作用

欢迎大家讨论这个问题,敬请观注电子及工控技术

本人大学就学的C语言和单片机接口技术,现在从事面向对象编程技术。

c语言 编程思想
(图片来源网络,侵删)

在我来看,学习单片机可以不先学习c语言,但是对于单片机,学习c语言又是最好的途径,操作单片机的c语言叫做keil c。

一般,学习单片机时候,都是从单片机的内存结构,引脚作用,各个模块功能来学习的,这个时候,会先学习一门底层语言叫做汇编,这是一个能操作到内存单元和寄存器的语言,但是过于复杂和繁琐。c语言操作单片机的优势在于它属于一门高级语言,比较易于理解,便于编写,而且单片机也会加深你对c语言的底层理解,所以说是学习单片机的一门比较好的语言。

希望我的回答能帮到您!

c语言 编程思想
(图片来源网络,侵删)

如果你要打算做单片机,C语言你是早晚都需要学好的,但是并不需要把C语言学的非常好再去学单片机,把C语言基本语法数据类型(基本数据类型和复合数据类型)学好,就差不多了。我觉得开始时候学C语言主要是为学单片机,方便做实验服务的,毕竟你要做单片机实验再用汇编就太没效率了,另外纯汇编编程以后基本不会再用到了。学单片机的核心还是单片机的接口和技术,比如IO原理、USART等通信接口、中断、内存分配、数据总线和时钟树、低功耗,以及一些电路知识等等,这些基础打好后在逐渐提高难度,比如TCPIP、文件系统、RTOS等。对做单片机来说,C语言是为单片服务的,C语言基础学好后,工作学习中遇到问题有目的的去更深度的学C语言,以及操作系统原理、编译原理、TCPIP协议等,在单片机和PC系统上的C语言编程思想是不一样的。总之两者是相辅相成循序渐进的,比如你用简单的51单片机可能你根本不需要多少C语言水平就够了,但是你如果用M7核的肯定需要的C语言水平就高了去了才能发挥它的性能

额⊙∀⊙上面这些是我带[_a***_]的时候用手机扣出来的,语言组织的可能比较乱,仅供参考哈!balabala[奸笑]

过来人分享一些体会:

15年前C语言零基础,只有些计算机原理、操作系统、BASIC语言、汇编语言数字逻辑电路、电工原理等理论基础;台湾公司工程部内部开课,有硬件***,有老师引导,凭着纯爱好汇编语言入门,有成熟框架由浅入深!

近5年来,许多的单片机纷纷有了C语言开发环境,有之前的历练基础,再捡起书本,完全不是难事!

什么要精通C语言?

不会C语言的程序员大把,为什么要精通C语言呢?精通什么语言关键是看从事的工作。世界上大部份的程序员是做上层应用开发的,他们的核心能力是解决业务逻辑问题,而这样的能力是其他专业范畴的,这时候开发语言仅仅就一工具好用,善用就可以了

我是学软件工程大一的新生,这个问题我也问过我的c语言老师,为什么我们不学python,java,而要学c?老师这样给我说的,她说现在其实所有高级语言都是从c的基础上发展而来,它算高级语言中比较低级的了,比如你用Java写一条语句可以实现的功能,可能你用c要写100行代码,但是你如果把c学懂了,j***a这些你可以一周就把它学懂,这些是一通百通的,可以这样说,c语言是其他高级语言的蓝本,除此之外,c语言能让你接触到底层的硬件到底是怎样工作的,对于你深刻理解编程十分有好处,因为做编程要么走游戏,app开发,要么走驱动,这两条路c都能打好基础,最后说一句,编程其实不管用啥软件来学不重要,就像画家学画画在意用的是什么笔吗,这些语言就是你手中的笔,编程思想才站举足轻重的地位

因为你的老师真的不会别的。就是C,估计也只会70年代那版的。而且绝对搞不清楚ANSI C和gnu C的区别,更别说交叉编译了(能用跟搞清楚是两个概念)。

如果你希望能够理解操作系统,数据结构的实现方法;如果你想快速掌握其他高级语言;如果你想直接操作硬件…请优先学习C,并在实践中使用它。

C好比剑法中的独孤九剑,简单,难学,涵盖天下武学总纲。只要精通C,其他家的剑法,看眼就会,而且比原本专学这剑法的用的还好,因为他学的是形式,你用的是本质。本质上说,所有高级语言都是C的函数包装或者语法糖而已。当然,学习C并不能快速运用到开发当中,因为它本身没有特别成熟的针对***的IDE和库。因为太灵活,你根本不知道如何出招。不像j***a或PHP,一周就能做个东西出来。但不要灰心,从跑马灯开始,到Linux驱动,再到第三方语言扩展库…熬个十年八年,也就能出头了。所以,C不是能***耍帅赚大钱的语言,但能让真正喜欢编程的人感受到快乐。

精通?对于任何一门学科都不要用精通或者不精通来形容!在我看来,说到达到精通这个程度的这世上没几个人。有一次我出去面试,对方公司的人问我是否精通C语言?然后我很尴尬,不知道怎么去回答这个问题。因为在我看来这个问题本身就是错的,本身就不该这么问!如果别人问我这个问题,我只能回答,虽然我生在中国长在中国,母语就是汉语…也算是学了二三十年的汉语了,但是我只能说我对汉语比较熟悉,谈不上精通。

先从每年的使用语排行榜来说,c语言都名列前茅;再从实际使用来说,即使你不是从事c语言开发,我也强烈建议,要想写得一手优质程序,精通c语言是必要条件之一。

c++是从c语言发展而来,j***a又从C++发展而来,精通c语言再上手其他语言如虎添翼,也就是可以说,c语言是一些常见语言的母语言。

再说说c语言要学那些呢?不要以为你在大学学的几个if,for循环等你就可以编程了,如果你那样认为,那么你基本没入编程之门,皮毛都不算。学通c语言,一定要深入理解指针,内存四区,数据结构,文件存储数据库等几个重要块,然后实际做一些小项目,看看别人写的程序。

从我工作几年看,基础打深进步才快!

程序员有必要学习C语言吗?

先说一下C语言的重要性:

1. 操作系统的kernel都是用C语言编写的(什么Windows、Linux、Mac了,手机安卓系统核心都是用Linux kernel),没有操作系统,上面的高级应用无从谈起;

2. 举例拿Python来说吧,Python底层实现也是用C语言编写,Python的作者吉多大叔也是一名C高手,其他高级应用语言也是如此;

3. 说的有些夸张,可以没有Python、J***a等,但是不能没有C语言;

4. 一些系统级软件开发一般都***用C/C++;

5. 嵌入式应用产品(最熟悉的AR、VR、工控系统、一些硬件产品)、设备驱动、物联网等。

接下来回答:

1. 对于从事应用开发的程序员来讲,学习C语言可以作为学习其他高级语言入门语言;

2. 对于从事通信、嵌入式、微/电子、自动化、物联网等相关专业,如果想在本行业持续发展,C语言就是专业语言,是绕不过的。

最后总结一下,世界上使用最广的语言:


时至今日,技术界的各种新编程语言层出不穷,提供的功能特性也是应有尽有,那么古老的 C 语言又是凭什么屹立不倒?是否仍值得程序员学习?

C是一种系统编程语言,不仅有些年头了,而且名声还不太好,比如未定义的行为、内存相关的Bug等。特别是在今时今日Go和Rust迅速走红的情况下,C似乎已渐渐被人遗忘了。尽管如此,恕我直言,C仍然值得花时间学习。

无论你是C语言的编程新手还是经验丰富的程序员,我强烈建立你读一读《现代 C 语言》(Modern C)这本书。通过本书,你就会发现C语言也在悄悄地进化,如今这门语言也不像你想象的那么原始。例如,C11定义了类似于C++的标准线程API,这个功能让C看起来更像是一种“现代”语言,而不是过时的语言。你可以通过本书从新的角度来审视C语言。

无论你是系统语言程序员、运维人员、性能工程师还是身处其他职位,对操作系统的了解越多,就能越好地完成工作。

以所有流行的类Unix操作系统为例,从内核到命令行工具,几乎都用C语言实现。研究相关的源代码可以让你深入理解内部操作系统。例如,我知道有一个taskset命令可以绑定到一个专用CPU进程,但我想知道其背后的实现方法,所以我阅读了源代码。然后,我得知了两个真相:

最后,因为C是靠近底层的语言,所以在某些情况下性能至关重要时,你可以利用C来编写高性能的代码,充分利用CPU。

从事嵌入式开发多年,使用C语言开发已经超过十个年头,除了C语言还用C++,j***a,python做过项目,程序员的优秀编程语言仅仅占据一部分,而且也不会只是针对C语言,现在很多的编程高手也不懂的C语言,因为行业领域不同展示出来的点也不太一样,有些j***a高手对于C语言甚至都没有接触过,难道就说这不是优秀的程序员,现在的编程语言已经趋向于高级化集成化,从招聘比例上看对C语言的需求远远低于j***a等编程语言。

但从绝对的招聘数量上C语言总体来讲也不在少数,因为在嵌入式领域,通讯领域,以及对性能要求非常苛刻的领域C语言还是当仁不让的第一选择,说到精通两个字眼,基本上出现在刚毕业学生身上,看看简历上经常写上精通几种编程语言,结果就是被技术面试老师打击的体无完肤,所以建议初学者在填写简历这个栏目里面,尽量不要体现精通两个字,写个熟练或者熟悉更加贴近事实。越是做的时间长越是不轻易说出精通两个字眼,掌握的东西越多越是觉得自己的知识的有限。

所以不要轻易的把一个优秀的程序员和某种编程语言挂钩,如果在掌握了一门编程语言的基础之上再去学习别的编程语言也会变得轻松许多,关键点在学习第一门编程的时候已经掌握了很多编程思想在这种编程思想的指导之下,再去切入别的编程语言就会变得轻松许多,透过这个现象可以得出一个结论,优秀的程序员首先掌握编程的模式,编程模式就是在编程过程中总结的一些经验。如果明白常见的网络编程模式,切换别的语言也会变得非常顺利。

虽然成为一个优秀的程序员和精通C语言并没有太直接的关系,但如果有机会还是要学习下C语言,因为C语言是一门非常基础的编程语言,很多编程语言的底层都是C语言实现的,所以了解这门编程语言对于底层的内部实现还是存在非常大好处的,如果先从C语言开始学习一直到走到上层的编程语言,对于建立自己的知识体系有非常大的好处,所以个人建议如果有机会接触到C语言,尽量切入学习一下,对于拓展自己知识面有非常大的好处。

一个优秀的程序员对于熟悉哪种编程语言并没有太多直接的关系,很多人觉得掌握的编程语言越多,编程能力越强,编程语言就是工具般的存在,掌握使用工具的技巧和套路才是关键,不在于掌握了多少编程语言,而且编程语言的掌握主要靠项目的实现,和掌握多少理论关系不是很大,要精通一种编程语言至少要十年以上功底,基本上这种编程语言的各种模式都有涉猎,在解决方案上也会进一步寻求最优,一直寻找最优的解决方案也是优秀程序员一直追求的东西,希望能帮到你。

谢邀

先说结论:是非常值得的。

理由:

1. 训练你的编码基本功。比如[_a1***_],python只需要一个函数sort就搞定了,但在C里面不行,需要自己去写排序算法,不论是快排,还说冒泡,都能训练你的编码基础功。

2. 让你理解底层的工作原理,比如指针的概念,知道数据是如何存储的,让你有一个直观的理解。

3. 学会了C语言,学其他语言都不在话下。就是学一些语法而已。

4. AI算法用C++,学会了C,学C++会很快,进而学AI算法,看代码都会很快。

可以学呀,好多大互联网公司还在用c/c++呢。不过主要是后台方向的,之前就在腾讯干了4年c后台开发。其实语言本身并不难,都是基础。你最好还要了解一些语言外的相关的知识,算法,数据库,网络编程等等,这些才是核心。会这些后,换语言并不难。

[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/12381.html

语言单片机编程语言
成都重庆互联网行业 编程语言就前景,编程语言前景排行