第一节课我们先了解C语言的一些基本常识和概念性;作为一个纯小白,首次接触编程需要做好一些心理准备,消除一些思想上的误区,避免一些弯路;然后准备好硬件设备(电脑)和软件(代码编辑器、编译器等),顺便体验敲一段代码和编译运行的快感。
注意,请认真学习完《C程序设计(第五版)》第一章后再阅读本文会有更大的收获。
《C程序设计(第五版)》01程序和编程语言
计算机是由各种硬件组成,而让这些硬件工作靠的是程序。程序是一个总称,它由N多条的指令构成,每一条单独的指令去和硬件交互直至执行完所有的指令——执行完整个程序,最终输出结果。明白程序的基本概念后,是不是觉得写一个程序很简单?就是把一堆指令凑在一起,soeasy?
但是计算机毕竟不是人,它只能识别它自己的语言——机器语言,就是二进制代码,由0和1组成,可长可短,随意组合。如果把我们日常的行为操作指令都转换成二进制,那可太费事了,所以经过人们的不断探索和迭代,更加高级的“指令”诞生了。所谓高级,指的是和我们人的行为习惯保持一致,不用把指令转换成二进制,就像现实世界人与人交流一样去编写“指令”——高级编程语言的代码,在机器执行这些高级代码之前通过编译器把它们编译成机器识别的二进制即可,这样大大提高了编程的效率和程序的可移植性。
02C语言几点说明
C语言是高级语言吗
C语言是高级语言。我们通常讲的高级语言是相对于汇编语言来说,不直接和底层硬件打交道;但是C语言自身又可以去做底层硬件的开发,比如驱动程序、单片机系统开发,这又让C语言显得不那么高级。
时至今日,随着编程语言的不断发展,和人交互更加自然流畅的语言我们成为高级,但是他们大多数底层的实现还是靠C语言的,学好了C,你也可以开发出更高级的语言。
C语言有什么用处
C语言是偏后端的语言,不像前端那样学习很快就能看到网页、APP界面那样有成就感,看起来好像离我们挺远。
那C语言究竟能做什么呢?往大了说,可以开发操作系统,可以开发出其他高级语言,做硬件驱动开发;往小了说,可以做个GUI软件(有图形界面的软件),帮我们算一道数学题。
其实,作为现代编程语言的基础,学习C语言能更好的让我们了解计算机系统,也能更好地去学习更高级的编程语言。以C语言作为学习编程的入门语言,你肯定不会吃亏,会让你今后在编程上的学习受益终身。
C语言要背代码吗
任何编程语言的学习都不要背代码。学编程不是靠背,一些语法规则,控制结构在你熟练之后会得心应手,通篇背代码除了应付一下考试之外别无用处。甚至你也不用刻意去死记硬背一些常用的库和原生的函数等,编程是为了解决问题,不是纯粹为了编程而编程。
工作中,在做项目写代码的时候,没有人能打包票什么函数都能记得住,什么类库都能得心应手的使用;往往大部分时间花在技术调研,Google搜索和浏览一些技术社区上。既然不背代码那背什么呢?答案是记住编程思路,转换为己用。
C语言学习难吗
对于初学者来说,学习一个全新的技能尤其是虚拟世界触碰不到的都会有相当的困难。但是只要坚定信念,踏实学习,不要以应付考试为目的,带着兴趣去学,按照书本的学习路线进行下去不会有太大的障碍。过程中会牵扯一些计算机特有的概念和知识点,要多去了解和探索,知其然更要知其所以然,对未知领域有渴求和探索欲,“难”不在话下。
03硬件和软件的准备
硬件
普通台式电脑或者笔记本都可以。Windows系统或者Mac系统均可。
软件
去windows