前言:
事实证明这世界上最难的两件事情就是:起名字 和 做选择
开始:
上回书说到:计算机语言的分类,那么现在就得找一个来练练手,感受一下学习的过程,所以我打算从C语言写起:
- 为什么是 C ?
因为已经有了 A 和 B,看起来狠废材的一句话但是事实的确如此。
1958年诞生了ALGOL58,1967年诞生了BCPL,1972年诞生了C,而C是第一个可以移植的语言;既然C是第一个可以移植的语言,那么便可以想象以前的语言是多么的依赖机器,人类又怎能允许这么不自由的事情继续存在呢?
作为 C 诞生的头号原因,C的可移植性是一直处于领先的:C编译器(将C代码转换为计算机内部使用的指令的程序)在大约40种系统上可用,包括从8位微处理器倒Cray超级计算机,由于C与UNIX的紧密联系,UNIX系统通常都会带有一个C编译器
C 强大而灵活,且贴近于底层,什么意思呢?就是只要源代码做一些改动,就可能会明显改变程序的运行效率(对,我就是 C 吹)但是有个缺点一定要提:那就是指针太难了,很容易让人出现各种失误,自由的代价就是要永远的警惕,当然对现代业务需求来说,C的耦合性太高,又不是面向对象的语言,所以给人员流动性较高的部分带来了很大的挑战,为了紧凑而高效请选 C ,其他的目的自有其他的语言来实现吧
这里默认你已经知道C语言的大部分语法和了解大部分计算机结构(比如:中央处理器,随机访问存储器RAM,永久存储器(一般指硬盘),各种外围设备(键盘/鼠标等))
- 不要着急写代码
代码是写不完的,正如工作是永远做不完的,学无止境;所以急着写代码就很有可能意味着以后无休止的修改和迭代,因此先介绍一下写代码的套路:
1.定义一个程序目标(这种情况下,基本不需要考虑具体代码的编写,只要逻辑通顺,能达到目的,写点 伪代码 即可)
2.设计程序(知道目标了就得考虑程序的运行时间和方法效率,选择一个好的方式表示信息可用令程序设计和数据处理变得容易,当然这个要靠经验值,某些语言的特性可以瞬间秒杀一些小问题)
3.编写代码(终于开始写源代码了,这里才是真正登上舞台的时刻;一段好的 注释 可以让日后的自己和他人身心愉悦 )
4.编译(源代码的 语法 错误是不被允许通过的,这里的过程也是比较复杂的,毕竟要把源代码变成计算机可以理解的东西而且还要能被执行,但是请注意:逻辑上的错误是无法给出的,毕竟它只是工具,无法替你思考)
5.运行程序(这个就是动动你的手指,直接执行这个 可执行文件 即可)
6.测试和调试程序(这里是最耗时间也是最需要掌握的一部分,无论学什么语言都无法阻止你去写bug,能找到并改掉bug便已是高手)
7.维护和修改程序(进步是永无止境的,一段好的代码需要多次的尝试和修改)
无论什么语言,写代码基本都这套路,可能个别地方会有差异,但基本都是这样;个别过程可能是在互相循环,但是一定要记住:要先规划再去编写,这样做可以节省更多的时间,因为找bug这种事是个无底洞,,,
- 语言标准
标准即 约定俗成,这里会经常遇到一个术语:ANSI/ISO C标准;第一个被正式采用的标准是在1989年被确认的,别名:C89,日后修改过的标准基本都是C+年份,比如:C11就是指2011年通过的C标准,一般这些标准会更新这门语言的新特性或者新支持的库,比如:C11增加了多线程的支持等;标准是重要的,在运行代码,实现功能的时候利用某些 集成开发环境 就需要选择好一个标准,太新的标准可能会让自己的老代码出现兼容性的问题,太老旧的标准束缚了自己写代码的发挥程度,所以合适的才是最好的
- 准备好写代码了吗?
C语言基本在每个平台上都有着属于自己的编译工具和集成开发环境工具,在 Windows 平台上我有用过 codeblocks,VS Code,QT5等等,在这里我会记录下利用 VS Code 写 C 的过程,由于 C++ 兼容 C ,所以我就直接写 C++ 的安装过程:
Visual Studio Code:Visual Studio Code介绍
Clang:Clang编译器介绍
GCC:GCC编译器介绍
MinGW:MinGW介绍
上述网址均需翻墙!!!
下面所有操作都是在 Windows 系统环境下进行,Linux 下配置会更简单!
如果想要设置 C++ 语言环境,需要确保电脑上有以下两款可用的软件,文本编辑器和C++ 编译器,此处编译器选用Clang,why? Google一下,主要看个人喜好
此处涉及到的知识点过多,仅记录基本操作,至于原因问Google
MinGW-w64 和 MinGW 现在是两个不同项目,MinGW-w64下载地址:
https://sourceforge.net/proje...
Clang不支持 "bits/stdc++.h" (GCC支持,Clang可以通过用户自定义头文件支持)
Clang是基于LLVM的
LLVM下载地址:http://releases.llvm.org/down... (Pre-Built Binaries:windows(32bit/64bit),无需下载 .sig)
C++运行环境准备:
下载好 Visual Studio Code(以下简称VS Code), LLVM, MinGW-w64 后开始配置C++运行环境:
- 安装LLVM,按照提示安装即可,安装完毕后,在 cmd 中运行 clang -v ,可查看是否安装成功
- 安装MinGW-w64,Architecture选x86_64,将安装目录里面的所有文件拷贝至LLVM的安装目录下,这两个软件里面的文件夹命名基本一致,直接粘贴即可
这样做的目的:Clang没有头文件,MinGW-w64有;复制粘贴过去后,MinGW-w64可通过Uninstall.exe卸载
- 安装 Visual Studio Code,安装好这个文本编辑器后,安装扩展:C/C++、C/C++Clang Command Adapter、Code Runner
- 上述工作完成后,在电脑里任意位置创建一个文件夹(此文件夹被用作以后放代码的工作区,该文件夹路径不可含中文,空格,引号;建议C与C++放置在两个不同工作区)
- 在VS Code中打开刚才创建的文件夹,在文件夹里新建 .vscode 文件夹
- 在 .vscode 文件夹内新建4个文件:launch.json,tasks.json,settings.json,c_cpp_properties.json,注:上述4个文件可随意配置,具体参考Google吧,一搜一堆
如果你觉得这个东西这么复杂的话,可以考虑用其他的编辑器,之所以要把 VS Code 拿出来举例,一是因为作为一款编辑器它是优秀的,在现今多语言交叉使用的环境下,一个万用的编辑器还是比较省心的,其次是利用这个安装的过程加强对语言的理解,可谓是一步一个坎,但是都迈过去就不怕了;从今天开始可能就要备考了,所以下面的内容我将不再叙述语言之中的某些细节,而是做题目或者讲述一些思维上的东西,代码一般是用C++,关于语法的问题概不赘述,可能会对某些性能上的改进加以讨论
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。