(一)编译器

编译器是将“一种语言(通常为高级语言)”翻译为“另一种语言(通常为低级语言)”的程序。一个现代编译器的主要工作流程:源代码 (source code) -->预处理器 (preprocessor) -->编译器 (compiler) -->目标代码 (object code) -->链接器 (Linker) -->可执行程序 (executables)。
高级计算机语言便于人编写,阅读交流,维护。机器语言是计算机能直接解读、运行的。编译器将汇编或高级计算机语言源程序(Source program)作为输入,翻译成目标语言(Target language)机器代码的等价程序。源代码一般为高级语言 (High-level language), 如C、C++、Java或汇编语言,而目标则是机器语言的目标代码(Object code),有时也称作机器代码(Machine code)。

(二)C语言编译器

Windows上的C编译器有Turbo C,VC 6.0,Visual Studio, Dev C++等。
Turbo C界面看起来不那么舒服。
VC6.0过于古老,不一定兼容Win 7/10。
Visual Studio极其庞大,安装文件有几个G,主要用于工业项目的开发。
所以,Win系统下推荐安装Dev C++。

苹果电脑的Mac系统下,直接用标配的Xcode编译器就行。Xcode可以用来编写C, C++, Objective-C和Swift。

Linux系统下,可用标配的GCC编译器。Linux系统比较难学,多为专业的技术人员所用。初学者不考虑也罢。

(三)安装Dev C++

1 从网络上搜索并下载Dev-Cpp.5.11

2 双击开始安装

 
1.png

3 同意

 
2.png

4 勾选按默认,Next

 
3.png

5 安装路径可以按默认的C:\Program Files (x86)\Dev-Cpp,也可以选择其他路径

 
4.png

6 安装中

 
5.png

7 勾选按默认,点击“Finish”即运行Dev C++编译器

 
6.png

8 Next

 
7.png

9 页面风格按默认,Next

 
8.png

10 OK

 
9.png

11 Dev C++成功启动

 
10.png

(四)用Dev C++编写第一个程序

1 首先在硬盘里建立一个目录,比如D:\CProjects用来存放即将编写的C程序

2 点击左上角的File-->New-->Project,打开一个新的项目

 
11.png

3 按默认选择Baisic下的Console Application,Name重命名为HelloWorld,项目类型由默认的C++ Project改为C Project,OK

 
12.png

4 保存路径选择第1步中创建的D:\Cprojects,文件名和保存类型按默认,点击“保存”按纽

 
13.png

5 编写程序

 
14.png

6 点击“Compile & Run”按纽,或按快捷键“F11”,在弹出的界面中,将main.c改为HelloWorld.c,点击“保存”按钮

 
 

7 显示运行结果,成功!
0.653秒是编译器计算出来的处理器运行这个程序所耗的时间。

 
 

8 进入D:\Cproject

 
 

这里HelloWorld.dev是咱们创建的项目,
HelloWorld.c是咱们编译的源码文件,
HelloWorld.o是编译生成的目标文件,
HelloWorld.exe是最终生成的可执行文件。

关注微信公众号请扫二维码

小朋友学C语言(2):安装Dev C++编译器的更多相关文章

  1. 小朋友学C语言(7)

    数组 一.数组简介 C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合.数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量. 数组的声明并不是声明一个个单独的变量,比 ...

  2. 小朋友学C语言(1):Hello World

    首先,需要一款C语言的编译器,可以使用在线编译器,也可以在本地安装编译器,比如Mac电脑可以安装Xcode,PC可以安装Dev C++. 若是第一次编写程序,建议使用在线编译器,推荐 菜鸟编译器 编写 ...

  3. 小朋友学C语言(8)

    求圆周率 (一)圆周率简介 圆周率(Pi)是圆的周长与直径的比值,一般用希腊字母π表示,是一个在数学及物理学中普遍存在的数学常数.π也等于圆形之面积与半径平方之比.是精确计算圆周长.圆面积.球体积等几 ...

  4. 小朋友学C语言(6)

    (一) 先动手编写一个程序: #include <stdio.h> int main() { if(1) { printf("The condition is true!\n&q ...

  5. 小朋友学C语言(5):常量和变量,for循环

    动手编写程序: #include <stdio.h> int main() { int a = 1; printf("a = %d\n", a); a = 2; pri ...

  6. 小朋友学C语言(3):整数、浮点数、字符

    C语言的数据类型有整型.浮点型(就是小数).字符.字符串.数组.结构体等.刚开始学的时候,不要一下子学太多.先学最基本的整型.浮点型和字符. 对于学习程序来说,最重要的是动手操作. 先编写程序: #i ...

  7. 小朋友学C语言(4):单精度浮点数与双精度浮点数

    上节课简单介绍了浮点数.计算机程序中的浮点数分为单精度浮点数和双精度浮点数. 单精度和双精度精确的范围不一样. 计算机里的最基本的存储单位用位(bit)来表示.bit只能用来存储0或1. 稍大一点的单 ...

  8. 小朋友学C++(2)

    多态 (一) 先编写函数: #include <iostream> using namespace std; class Shape { protected: int width, hei ...

  9. 小朋友学Python(4)

    Mac下安装Python 3 Mac系统会自带Python 2.7.x.安装Python 3时,不要卸载Python 2.7.x,因为有Mac系统有一些库会依赖于Python 2.7.x. 安装步骤: ...

随机推荐

  1. WebSocket概念

    WebSocket 是什么? WebSocket 是一种网络通信协议.RFC6455 定义了它的通信标准. WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议 ...

  2. 关于fit和transform

    Fit是对于数据进行拟合,所谓拟合,就是根据数据,计算获得数据里面的一些指标,比如均值,方差:下一步很多API都是需要这些参数来进行后续对数据的操作,比如下面要讲到的transform. Transf ...

  3. 应用间通信方式HTTP和RPC

    一.HTTP和RPC 1.Dobbo  RPC框架 2.Sping Cloud 微服务架构下的一站式解决方案. 微服务直接使用的是 Http restful方式 二.SpringCloud中服务间两种 ...

  4. Oracle 增加、修改、删除字段

    分别对T_USER表 进行增加name字段, 修改name字段,删除name字段 /*增加列表*/ ALTER TABLE T_USERS ADD name varchar2(512) ; /*删除列 ...

  5. java -jar 执行jar包出现 java.lang.NoClassDefFoundError

    我用idea工具将自己开发java程序打成一个可执行的jar包,当然用eclipse或者直接用jar命令行都无所谓,本质都是将程序归档到一个压缩包,并附带一个说明清单文件. 打jar的操作其实很简单, ...

  6. hadoop需要哪些技术支持

    hadoop是一个开源软件框架,可安装在一个商用机器集群中,使机器可彼此通信并协同工作,以高度分布式的方式共同存储和处理大量数据.最初,Hadoop 包含以下两个主要组件:Hadoop Distrib ...

  7. 批处理手动设置电脑的ip

    参考: http://blog.csdn.net/jiangzhanchang/article/details/7063152 http://wenda.haosou.com/q/1378697364 ...

  8. 转:使用 Go-Ethereum 1.7.2搭建以太坊私有链

    使用 Go-Ethereum 1.7.2搭建以太坊私有链 目录 [toc] 1.什么是Ethereum(以太坊) 以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约.开源的底 ...

  9. XE5 Android 开发数据访问手机端[转]

    把供手机端调用的web服务完成,接下来实现手机端调用webservices获取数据 1.新建firemonkey mobile application 2.选择blank application 3. ...

  10. Android 如何让EditText不自动获取焦点 (转)

    在项目中,一进入一个页面, EditText默认就会自动获取焦点. 那么如何取消这个默认行为呢? 在网上找了好久,有点 监听软键盘事件,有点 调用 clearFouse()方法,但是测试了都没有! x ...