环境搭建本文进行C语言开发基于Linux环境的体系结构程序

本文试图通过上篇、中篇、下篇,带领大家走进C语言的世界。C语言是一门非常古老的语言(1972年发明),每个人都必须知道一些东西,不知道也没关系。C语言是出了名的难学难用,用好C语言更是难上加难。

本文不假设读者有任何其他编程语言的基础,但需要了解计算机的基本概念。有计算机体系结构的基本概念。图1是本文简化的计算机结构,其核心是CPU和内存,CPU用于运行代码,内存用于存储程序代码和数据。输入输出设备可以简单理解为我们电脑的鼠标、键盘和显示器。

图 1. 计算机架构示意图

这里需要注意的一点是内存是划分为单元的,我们可以简单理解为一个单元的大小为1字节(Byte,或8位),如图1右侧所示。并且,内存为以本单元为单位寻址,即定义内存的地址。这个地址可以参考我们日常的门牌号,让CPU知道数据访问的位置。

环境建设

本文C语言开发基于Linux环境。之所以使用Linux,是因为在这种环境下不需要安装加载工具。本文假设使用的 Linux 发行版是 Ubuntu 系统。如果不知道如何安装系统,可以参考文章《最详细的图文安装Ubuntu教程|如果你找不到我》。具体安装可以安装在虚拟机上,使用起来更方便。

有了操作系统环境后,需要安装C语言源代码编译工具。Linux 中的编译工具是 gccc语言源程序的基本单位,在 Ubuntu 上可以轻松安装。执行以下命令安装工具:

sudo apt-get build-dep gcc

或者运行以下命令来安装该工具:

sudo apt-get install build-essential

安装完成后,执行以下命令验证是否安装成功:

gcc –版本

如果版本信息如图所示,则表示安装成功。如果提示命令不存在,则表示安装失败。

第一个程序

图片[1]-环境搭建本文进行C语言开发基于Linux环境的体系结构程序-老王博客

为了有个整体的了解c语言源程序的基本单位,本文先给出一个完整的可以运行的代码。下面是一段可以直接编译运行的C语言代码。

#include int main(void){ printf(“hello world!\n”); }

以上代码可以在Windows的记事本中保存为hello.c文件,然后复制到Linux系统中。或者如果你会在 Linux 下使用 vim 工具,通过该工具创建一个 hello.c 文件,将上面的代码复制到文件中,并保存。然后在hello.c文件所在目录执行如下命令:

gcc -o 你好你好.c

这将生成一个类似于 Windows 下的 *.exe 文件的可执行文件。在该目录下,输入以下内容执行可执行文件:

。/你好

执行后,可以看到输出(hello world!)。至此,我们已经完成了第一个C语言程序的开发、编译和运行。

第一个程序的解释

C语言是一种编译型语言,也就是说源代码需要编译成CPU可以识别的格式(机器码)才能在Linux上运行。相比之下,解释型语言(如Python、PHP等)可以直接在解释器中运行,无需编译生成其他格式的文件。

第一行(#include)表示我们需要引用一个已经在别处实现的函数(即后面使用 printf)。所有语言都提供了一点“轮子”,这样我们就不用从头开始了。我们可以用这些“轮子”来组装我们的“汽车”,这样可以省去很多工作。

第二行(int main(void))是C语言的入口。每个C语言程序都有这样的入口函数(函数后面会解释),而且必须是这种格式。这里int是函数的返回值,表示一个整数;main 是函数的名称,它是固定的,不能更改;void 是一个参数。

第三行({)和第五行(})是函数的开始和结束标志,每个函数都包含这两个标志。

第四行 (printf(“hello world!\n”)) 是一个函数调用。此功能由其他程序实现。这里我们借用这个函数。printf的作用是将内容打印到终端,所以当我们执行程序的时候,会在终端看到hello world!细绳。

有些细节还没有提到,可以先按照葫芦画瓢。

今天是第一次,后续文章会介绍数据类型、变量、控制语句和函数。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论