c++教程(一:Compilers)
来源:互联网 发布:网络天天分红投资公司 编辑:程序博客网 时间:2024/05/21 14:52
————————————————————————
该系列教程为翻译c++官方教程,点击参考英文原版,水平有限,翻译不通之处敬请谅解!
————————————————————————
编译器
在进行c++学习之前,必备的基本工具是需要一台电脑以及可以编译C++代码的编译软件,从而才可以运行c++代码。
经过多年的发展,c++已经是一个囊括多种编程语言特性的语言。因此为了后续教程的正常学习,需要安装于了解对应的编译器。目前最近的编译器将支持(或者部分支持)2011标准介绍的功能。
不同的编译器供应商在编译器功能上有所不同。查看该页的底部可以了解一些已知的编译器以及其所支持的功能。他们中有些是免费的。
什么是编译器
计算机只能理解由一系列0与1数字组成的语言,这种语言就是机器语言。
一个简单的例子,在计算机内部能看到下面这样:
00000 10011110
一个更具体的计算机语言比如说让用户输入两个数,求着两个数的和,并把它们的和显示出来,那么这些过程包括的机器语言就可能如下所示:
00000 10011110
00001 11110100
00010 10011110
00011 11010100
00100 10111111
00101 00000000
正如你所能想象的,直接用机器语言编程,也就是只使用0和1的机器语言去编程是非常繁琐和容易出错的。为了使编程更容易,开发出了高级语言。高级程序也使程序员更容易检查和理解彼此的程序。
那么上述输入两个数并求和的过程用c++代码写就如下所示:
int a, b, sum;cin >> a;cin >> b;sum = a + b;cout << sum << endl;
即使现在还不能理解这段代码的意思,但是使用这种c++语言和前面的机器语言相比也能明显的看出c++语言是更简单明了的。
由于计算机只能理解机器语言,那么想让计算机理解我们人所写的高级语言,必须需要把我们的高级语言编译成计算机所能认识的机器语言(这也就是翻译)。这个过程就需要调用编译器,进行解释汇编编译。
C++是一个编译语言,这意味着它能够翻译成计算机可以理解的机器语言,使生成的程序高效。因此,我们需要一套工具,称为开发工具,其核心是一个编译器和链接器。
控制台程序
控制台程序是使用文本来与用户和环境进行通信的程序,例如打印文本到屏幕上,或者从键盘读取输入。
控制台程序很容易进行交互,一般一个程序都有一定的功能目的,在所有平台上其功能都是相同的。他们实现起来也很简单,因此学习编程语言的基础知识是非常有用的,该教程的所有例子都是控制台程序。
编译控制台程序去决议你所使用的编译环境。
初学者编写C++程序,最简单的方法是使用一个集成开发环境(IDE)。IDE通常集成了多种开发工具,包括一个文本编辑器和直接编译程序的工具。
在这里有一些不同的免费集成开发接口(IDE)可以教你如何编译和运行控制台程序:
如果你安装的是Linux 或者Mac系统环境,那么你可以直接在终端包括了C++11的命令行下进行编译:
- c++教程(一:Compilers)
- Free C, C++ Compilers
- compilers
- 《C语言程序设计教程》(一)
- Online C++ compilers,&…
- opencv教程(一)(c++)
- Windows c语言自学教程(一)
- c++教程(一)c过渡c++
- 简明C语言教程(一)前言
- Compilers: Principles for C/C++ with .c & .h
- Protobuf-C For Embedded Developers (and other cross compilers)
- 15 Essential Compilers and IDEs for C/C++ Programmers
- 15 Essential Compilers and IDEs for C/C++ Programmers
- Intel C and C++ Compilers: Features and Supported Platforms
- C#,深入浅出全接触(一)_C#教程
- C#,深入浅出全接触(一)_C#教程
- Objective-C内存管理教程和原理剖析(一)
- hjr教程-C++(一):面向对象类的写法
- php cli模式下获取参数的方法
- u-boot编译
- HDU 5720 Wool(排序 遍历)
- Windows 记事本的 ANSI、Unicode、UTF-8 这三种编码模式有什么区别?
- 编译android系统
- c++教程(一:Compilers)
- 插入排序及算法分析
- JSp之EL表达式
- POJ3267 -- The Cow Lexicon( 字符匹配dp动态规划 )
- 菜鸟走起
- 1019. General Palindromic Number (20)
- Java中的String、StringBuilder以及StringBuffer
- 学校实验室交换机上网,没有自动拨号时的设置
- 插入排序的结构体做法