首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

48岁的 C语言 成功背后的秘密,C语言究竟有着怎样的诀窍!

▏C语言前言 ▏

从计算机发展以来,编程语言也是层出不穷,但是无论多少“新人”翻涌而出,都无法改变C语言在编程界中德高望重的地位。

C语言到底能做了多少事情?大家经常说的Linux操作系统的内核都是C语言写的,对应的很多嵌入式内核驱动也跑不出C语言范畴,包括大家常用的手机,机顶盒,电视机底层硬件驱动基本上都是C语言完成。

可以毫不夸张的说,如果没有C语言,就没有微软的Windows 10 和 Surface Book,也没有安卓智能手机,更没有乔布斯创造的苹果帝国各种产品MAC、iPad。

C语言最牛的地方,几乎现在所有的上层语言的底层语言绝大部分都是C语言大哥做嫁衣给铺垫完成。深刻理解上层语言底层实现,离不开C语言。而且很多大学的计算机专业都会把C语言作为学生入门编程的第一步。因此,很多程序员都把学习C语言当成程序生涯中最基本的事。

编程学习Q qun:1082......671464

而C 语言为什么能成为最重要、最流行的编程语言之一,这个疑问从斯蒂芬 · 普拉塔在《C Primer Plus第六版》中给我们总结出的C 在众多语言中脱颖而出的优点中就能够得到答案。

▎ 设计特性

C语言融合了计算机科学理论和实践的控制特性。C 语言的设计理念让用户能轻松地完成自顶向下的规划、结构化编程和模块化设计。因此,用 C 语言编写的程序更易懂、更可靠。

▎ 高效性

在设计上,它充分利用了当前计算机的优势,因此 C 程序相对更紧凑,而且运行速度很快

▎ 可移植性

C 是可移植的语言。这意味着,在一种系统中编写的 C 程序稍作修改或不修改就能在其他系统运行。如需修改,也只需简单更改主程序头文件中的少许项即可。

▎ 强大而灵活

C 语言功能强大且灵活。功能强大且灵活的 UNIX 操作系统,大部分是用 C 语言写的。C 程序还可以用于解决物理学和工程学的问题,甚至可用于制作电影的动画特效。

▎ 面向程序员

C 语言是为了满足程序员的需求而设计的,程序员利用 C 可以访问硬件、操控内存中的位。C 语言有丰富的运算符,能让程序员简洁地表达自己的意图。

这 7 步怎么用呢?

第 1 步:定义程序的目标

主要是说在动手写程序之前,要在脑中有清晰的思路。想要程序去做什么首先自己要明确自己想做什么,思考你的程序需要哪些信息,要进行哪些计算和控制,以及程序应该要报告什么信息。

第 2 步:设计程序

对程序应该完成什么任务有概念性的认识后,就应该考虑如何用程序来完成它。例如,用户界面应该是怎样的?如何组织程序?目标用户是谁?准备花多长时间来完成这个程序?除此之外,还要决定在程序中如何表示数据,以及用什么方法处理数据等。

第 3 步:编写代码

设计好程序后,就可以编写代码来实现它。也就是说,把你设计的程序翻译成 C 语言。一般而言,使用文本编辑器创建源代码文件。该文件中内容就是你翻译的 C 语言代码。

第 4 步:编译

大家应该知道,C 编译器负责把 C 代码翻译成特定的机器语言。此外,C 编译器还将源代码与 C 库的代码合并成最终的程序。其结果是,生成一个用户可以运行的可执行文件,其中包含着计算机能理解的代码。编译器还会检查 C 语言程序是否有效。如果 C 编译器发现错误,就不生成可执行文件并报错。

第 5 步:运行程序

在常见环境中运行程序要输入可执行文件的文件名,而其他环境可能要运行命令或一些其他机制。例如,在 Windows 和 Macintosh 提供的集成开发环境(IDE)中,用户可以在 IDE 中通过选择菜单中的选项或按下特殊键来编辑和执行 C 程序。最终生成的程序可通过单击或双击文件名或图标直接在操作系统中运行。

第 6 步:测试和调试程序

程序能运行是个好迹象,但有时也可能会出现运行错误。接下来,应该检查程序是否按照你所设计的思路运行。你会发现你的程序中有一些bug,可能忽视了输入检查导致程序瘫痪,可能会把圆括号放错地方,可能误用 C 语言或打错字,等等。

第 7 步:维护和修改代码

创建完程序后,你发现程序有错,或者想扩展程序的用途,这时就要修改程序。例如,用户输入以 Zz 开头的姓名时程序出现错误、你想到了一个更好的解决方案、或者要修改程序使其能在不同的计算机系统中运行等等。如果在编写程序时清楚地做了注释并采用了合理的设计方案,这些事情都很简单。

对于热爱编程的人来说,有一群一起学习的小伙伴很重要!如果你感兴趣或者有需求的话,笔者有一个编程零基础入门学习交流俱乐部,还有学习视频文件,欢迎初学者和正在进阶中的小伙伴们!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200329A0DHR200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券