时间:2018-7-11来源:本站原创作者:佚名

相信这么努力的你已经置顶了我

老九学堂你身边的IT导师

C语言是面向过程编程的语言

C++是面向对象编程的语言

两者有本质的区别

是完全不同的两种语言

不过C++兼容C语言

C++一般看作是对C语言的扩展

因为C语言没有面向对象的语法结构

当时业界迫切需要面向对象的编程特性

所以贝尔实验室的开发者

为C语言添加了面向对象的结构

现在C++已经不只是C语言的扩展了

它被看作一种新的编程语言

虽然C语言的特性以及库函数

仍然被C++支持

不过C++拥有自己的独立的类库体系

功能相当强大

C/C++的优点在于与底层比较接近

可以控制的粒度更加精细

是开发系统级应用的最佳选择

关于跨平台

C/C++也是很好的语言

因为所有平台都支持

不同的是

不同平台支持的实现不同

类库不同

要编写跨平台的程序

需要选择跨平台的类库

如标准类库

如果标准类库的支持不够

也只需要附加编写一个跨平台的支持类库

下面来看看,的学霸们都是怎么理解C语言的?

某小风

C语言是最基础的编程语言了,其实,对于理工科专业的人来说,C语言并不难。

C语言都学不好,怎么学习C++、C#、Java、汇编语言等,这些语言比C语言要难得多。也许是因为刚接触C语言,刚刚接触一门全新的课程,所以感觉比较难。

记得本人大学刚开始接触C语言的时候,也是一头雾水,根本不懂C语言是干嘛用的,听课时也是晕乎乎的。感觉很虚的东西,计算机二级考试也是勉强合格。

后来,本人报名了一个电子设计竞赛,经常在实验室里编程做项目,才慢慢体会到C语言的真正用处。后来对C语言产生了兴趣,课余时间经常到实验室设计项目。到大三的时候,报名参加了全国电子设计竞赛,估计是运气好吧,拿了一等奖。

某丁丁

C语言难学,个人认为是被国人误传或误教所致。

一直以来,高校理工科都开设了C语言,学生稀里糊涂开始学习。

在不清楚学习目的、所需前提知识的情况下,仅学习些基础语法知识,导致大部分学生学习效果不理想,从而造就了C语言难学的传说。

C语言是程序员与计算机进行交流的一种语言,目的是达到对计算机进行控制,实现程序员预期的效果或功能。

因此,为了能更加有效地进行交流或控制,除了学习些基础的语法知识外,还要求学习者对交流对象要有较清楚的了解或熟悉(即所需前提知识),和掌握一些必要的交流技巧(思维方式或套路类的东西)。

某阿强

c的语法是现在语言中比较简单的,要说语法是就只有c++最为复杂了。

大家说的c难是因为,用c开的的东西一般与系统api和算法有关。

算法这个,没个数学功底真的想不到,其它的语言没有比较高级的算法,其它语言的算法也都是c语言从语言的底层(不是系统的底层)实现的,再封装成语言的算法库。

系统api,这个东西不像语言层级的api那么简单,它是系统直接关系的相当复杂,要了解系统、信号、返回值这东西表现出来的现象多,与你要做一个东西有不同的处理。

还有一个点c实现的东西要考虑到性能,这个不简单,不是简单的io性能,要考虑内存拷贝的消耗、堆栈开关的消耗、cpu调度的消耗。

某高校胖纸

从没觉得c语言难学,相比后来的大量的面相对象的语言,c语言其实非常好学,学习门槛并不高。

如果说到难,一个是数据结构,这个东西比较枯燥,而且严格说应该是属于数学问题而不是编程问题,第二是函数偏少,经常需要自己动手,不像主流oop们全都给你封装好了直接用,不过,从这点讲,也正是c语言的一大优势,让你知其然亦能知其所以然。

c语言属于中级语言,意味着它具备oop们没有或缺乏的的对计算机底层资源的操控能力,因此操作系统,驱动程序等基本都只能用c。

某戴戴

学好每一种语言其实都不容易,即便是看起来入门很轻松的也是一样,想要做到精通非得有经过一定的项目上的磨练才行。

C语言学习曲线相对陡峭,除了学习者的个人意愿和投入,教授者的能力也是很关键的-很难想象一个没有C项目经验的人能教授的非常深入并有最佳实践分享-当然,平心而论,语法类的知识上的传授还是好的,而且修行还是靠个人的。

建议我们学习者多加以实践,重视调试的技能,逐步积累经验,联系实际应用,未来成功可以预期。

某高校留学生

很多人在学习C语言的时候,本来对编程很感兴趣的,最开始学习的时候也投入了大量的时间和精力在上面,理解了这,理解了那,到最后发现只是在黑窗口下面打印几行数字和字母;

学起来会觉得比较枯燥,而且越学越发现没意思,最后只能放弃,所以说,学习编程,换一种方式去学习可能会更好一些,比如说开发个小游戏啊,这样学起来可能会更有成就感,让人觉得学了这东西有用,可以做出东西来。

最后我们再总结一下了解C的必要性:

1.对内存和硬件的操作,是目前绝大部分高级语言所隐藏的,只有坚实C背景的同学,才可以考虑的更多,如果我们想对原理有更多的了解,那么C其实是不可绕过的一个环节。

2.想要缔造一个新的系统和语言,没有C是不行滴(或许C++勉强)。

3.不管是OC的消息系统,Java的自动回收,Ruby的动态类扩充,这些花哨且时髦的东西,其实都可以用C来实现,而且很多都是用C来实现的,如果我们想自己实施,那就看C吧。

4.破解和分析程序,C可以起到很大的作用。C是可以人为创建Bug来破坏一个系统的。

最后再说一句

请不要忽视C语言

它上可九天摘月

下可五洋捉鳖

老九学堂7月线下班

即将满员

9月、11月班

火热报名中...

有需求的同学们

在老九学堂的主页

进入商城预定

其他问题加老九君

赞赏

长按







































偏方治白癜风
北京治疗白癜风最好的医生

转载请注明原文网址:http://www.helimiaopu.com/cxkf/cxkf/6431.html

------分隔线----------------------------