C语言从哪学起?
先问个问题:
你喜欢看书吗?你是否拥有计算机结构、存储、运算原理的扎实基础?
如果以上任何一个都没有,那么劝你还是放弃C语言,去学习门槛相对较低的HTML、PHP、Python、Java。
很多初学者刚学习C语言的时候,觉得困难重重,不是因为智商的差异,归根到底,是因为你是否对计算机系统有一个整体的、科学的基础认识?
所以,你想学习C语言,首先你得懂这些,如果你不懂,那么就买书去看吧,看视频也行。
书籍
《计算机科学导论》基础书籍(必看):
必看书籍,先把“基础的数的进制知识”“基础的计算机结构知识”“数字化原理”搞明白,再去学习C语言,必定事半功倍。
这本书籍比较基础,阅读起来难度不高,能够让你对计算机有一个整体的了解。
【如果你看到这里,决定放弃C语言,那么就不要往下看了,说明C语言这门语言不适合你的性格。
你可以考虑HTML、PHP、Python、Java等,或者去w3cschool上面的免费实战去测试下,你自己喜欢哪门语言,感兴趣才能坚持,更何况是编程学习,更需要兴趣做主导。】
《C语言程序设计》K.R(必看):
对新手来说略难,但是绝对是非常重要的一步,你需要认真阅读。
《c primer plus》
进阶书籍,写的非常详细,建议阅读。
方法
后面就不再介绍书籍,你先把上面的书看完,你自然而然知道该如何学习C语言,上面介绍三本书都没看完,介绍再多书籍,对你也没有任何帮助。
说到底,C语言:一门以内存为中心的编程语言。
下面是知乎用户“林建入”的一套学习C语言的方法,小伙伴可以参考下。
学习方法:
1.学习基础语法
2.学习简单的少数几个C语言自带的函数
3.学习程序设计的基础知识,比如算法、数据结构
4.学习一些C语言更加强大的函数。
5.学习一些特定领域的基础理论知识,比如操作系统、图像、数据库、网络等。
6.应用上面的知识,进一步学习其他人其他人提供的函数库。
这个阶段最重要的是1到4,然后选择去做5和6,自己做出一些小作品出来,那么就非常赞了!
大概就这些,就这么几百个字,但是你去学习的时候,说实话,会很累,但是希望你能坚持!
最后送上一张图,当年学C语言的过程,共勉之。
九十年代从 TurboC 入门的老码农来写一点经验之谈:
首先,我个人是非常反对看视频学习的,看视频无法通过索引查询知识点,会浪费大量的时间,而且网上的教学视频水平参差不齐,容易走弯路。
其次,兴趣是最好的老师,比如在 Windows PC 上学习 C 语言,你需要安装数 GB 大小的 Windows SDK 才能用上百行代码显示一个窗口,期间还得学习 Win32 API 等不相关的内容。否则就只能简单的输出一个“Hello World”,非常的单调无聊。
所以这里我推荐通过单片机来学习 C 语言,从点亮流水灯到控制液晶显示屏再到控制电动机,通过单片机编写调试 C 语言非常的有乐趣而且可以看到实际用途。同时成本并不高,以学习 STM32 开发为例,只需要购买一个约 10 元的 STM32F103 最小板和同样价格约10元的编程器连接到电脑并配置好开发环境即可上手。
由于 C 语言是可移植的语言,你通过单片机学到的知识和技巧在 PC 等平台上同样是有用的。同时通过单片机这种底层硬件的开发,楼主可以更深刻的掌握计算机体系架构,对日后学习其他计算机知识和语言都是有百利无一害。
同时学习 C 语言的书籍,我推荐 C 语言发明人编写的《C编程语言》,使用最权威的教程能让题主站在最高的起跑线上。
依据题主的选择,结合单片机相关的学习材料相信很快就可以上手。
希望对题主有用。
学习C语言从什么开始学起。我来说说我的学习经验,说句实在话我真正学会C语言是从开始学习单片机开始的,以前在上学时也学过C语言,由于只是应付考试,没有深入去学习,当时只是学习了C语言的一些皮毛没有领会C语言的精髓。后来由于工作的需要接触到单片机,刚开始使用汇编语言编写,感觉这种汇编语言晦涩难懂,在一次偶然的机会我从书中看到C语言也可以进行单片机程序的编写,我如获至宝就进入了用C语言编写单片机程序的阶段,下面我和朋友们谈谈我是如何从C语言开始学起的。
学习C语言要找到一个合适的平台
通过我这些年对C语言的学习,我认为学习C语言要有一个平台,这样去学习进步才更快。特别是对刚接触这种C语言的朋友来说更为重要,我学习就是通过单片机这个硬件平台才逐渐深入理解了C语言的,起初我是从新开始学习最基本的C语言知识的,比如先从 if、while、 for、 switch等基本语句和逻辑运算与赋值表达式开始编写循环流水灯。尽可能多地运用这些语句和表达式编写流水灯的程序,通过生成目标代码下载到单片机实验板中观察现象,通过反复的调试程序达到自己想要控制的效果,这样慢慢的就对C语言产生了浓厚的兴趣了,我想如果只用纯软件的C语言编译软件虽然能够看到执行的最终结果,但是看不到每一步所执行的效果。我们通过Keil C编程软件,在通过单步执行每一步程序,可以看到所设置的变量里数据值的变化,从而对程序每一步执行的过程和结果我们通过这个软件都能看的到,最后的结果通过发光LED管或者数码管等显示器件显示出来,这对我们树立学会C语言的信心非常重要。就是通过这样的一个平台我找到了快速学习C语言的方法。
学习C语言要找到一个适合自己的方法
学习C语言的平台有了之后,下面就要探索一个适合自己的学习方法的问题了,在这方面我还是根据自己学习的一点体会和朋友们分享我学习C语言的方法吧!我学习的第一步就是“看”,我主要是看别人的例程,然后按照“描葫芦画瓢”式,自己仿照别人的例程敲写代码,比如大部分朋友都学过这样一个例程“滴水拖尾流水灯”,就像我们看到屋檐下的一颗水滴慢慢变大,达到一定程度突然坠落的过程,我就是通过别人的例程学会自己编写这个程序的,编写好程序通过八个发光二极管来验证这个具有拖尾的流水灯程你会感觉到有一种成功后的喜悦感;看例程到一定程度后,我们就可以自己编写一些简单的程序了,又例如我们在中学课本上学了这样一个数学故事的例子,从1+2+3+4+......+100。我相信朋友们都知道结果,我们就可以用C语言来编写程序。最后用单片机控制数码管来显示这个式子的结果,就是这样通过“看”、“模仿”、“自己编写”这样一个流程把C语言的很多方面都理解的更透彻了,特别是对指针这一块的学习。我们可以用在简单的流水灯程序上,虽然有点像“杀用牛刀”的嫌疑,但对我们理解指针的本质有很大的帮助;也可以用在动态LCD1602显示或者LCD12864等液晶显示程序上。通过这样的方法学习使我走向了一个适合自己的学习C语言之路,我相信很多朋友都会找到适合自己学习C语言的方法的。
学习C语言要建立学习的兴趣
“说一千,道一万”关键学习C语言要有兴趣,要有内驱力。这样才是我们学习好C语言的关键。只要我们找到一个适合自己学习C语言的平台,然后有一个合适自己学习的方法,通过训练“培养”出自己学习C语言的兴趣,那么你进入C语言的神秘的大门就为期不远了!
以上就是我给学习C语言朋友们的一个小小的建议,希望能对大家有所启迪!欢迎朋友们讨论这个话题!敬请关注电子及工控技术。