世界上不是缺少美, 而是缺少发现美的眼睛。
Beauty is found everywhere. Our eyes do not show a lack of sense of beauty, but a lack of observation.
—— Auguste Rodin
很多人学习 iOS 开发,都是从下载 Xcode 这样大型的开发环境开始,谈到学习 C语言,自然想到去找一个这样的IDE,实际上 Xcode 就可以直接支持 C语言 的开发:
有经验的童鞋可以自行尝试,本文将介绍一种更简单的体验方式。
一般来说,开发环境需要提供以下工具:
- 文本编辑器
- 编译器
- 运行环境
其中编译器是与语言的关系最为密切,这里我们选择大名顶顶的 GCC (GNU C Compiler),它是Linux平台编译器的事实标准,从名字可以看出,这家伙本来就是为了C语言而准备的。
运行环境对于初学者来说,比较难以理解,这里我们只要知道 Linux 下通过 Shell 的方式提供,而与 Linux 同父异母的 Mac ,则通过 “终端(Terminal)” 来虚拟实现,类似 Windows 系统下的“命令行”窗口。
一个窗口完成一切
对于开发 iOS 的朋友们来说,因为我们拥有了Mac电脑,实际上就拥有绝好的工具箱,这个工具箱不仅标准,而且准备好了一切,下面就来感受一下这种畅快淋漓的感觉吧。
运行“终端”
首先我们运行“终端”,macOS 的 “终端” 位于 “其他(Utilities)” 文件夹内:
建立开发目录
为了把这次体验所有的文件都放在一起,新建一个文件夹,作为工作目录:
$mkdir tryC
编写第一个C程序
终端中,敲入以下命令,打开文本编辑器:
$emacs hello.c
输入源码:
#include <stdio.h>
int main() {
printf("Hello, world\n");
return 0;
}
Emacs 光标基本操作:
C-f 前进一个字符
C-b 后退一个字符
C-a 移到行首
C-e 移到行尾
C-p 上一行
C-n 下一行
按C-x c
,并输入Y
,回车,这样文件被保存,并退出编辑器,回到命令行状态,等待我们的下一步指令。
编译
你可以输入ls命令,查看是否有hello.c 文件存在:
$ls
hello.c~
是 emacs 生成的缓存文件,可以安全删除。
下面输入:
$gcc hello.c
一切正常情况下,没有任何输出,再次用 ls
命令查看,应该有 a.out
文件生成 :
运行
a.out
文件是可执行文件,后缀 out 只是表明它是输出文件,本身没有任何意义,即使删除也没有关系。
输入以下命令来运行我们的第一个程序,注意美元符号后的小点点:
$./a.out
怎么样,是不是很 easy,赶紧来挑战一下,
请用 C 语言编程实现:在“终端”中输出如下等腰三角形,要求程序能适应任何N(N为三角形层数),下面是 N = 5 时,输出的图形:
期待看到你的大作。