文章目录


C++语言概述

1 计算机系统的组成

【C++】(一)C++语言概述_开发语言

计算机系统的硬件组成

  • 1.运算器 :进行算数运算,逻辑运算
  • 2 控制器 :相当于计算机的神经中枢
  • 3 存储器 :存放程序与数据
  • 4 输入设备 :将人所能识别的信息形式转化为计算机所能识别的0-1代码
  • 5 输出设备 :将计算机所能识别的0-1代码转化为人所能识别的信息形式

计算机的基本结构

【C++】(一)C++语言概述_c++_02

2 指令与程序

指令​是计算机执行某种操作的机器命令,它可以被计算机硬件直接识别和执行。

计算机指令用二进制代码表示,一条指令通常由两个部分组成:

【C++】(一)C++语言概述_后端_03

操作码​指的是究竟要执行什么操作;操作数为一个地址,表明这个数存储在计算机的哪个位置。

计算机程序​(computer program)是指完​成一定功能的指令的有序集合​。

编写程序(programming)不仅考验程序员的体力、耐力和意志力,而且还需要程序员的智力、想象力和创造力。

软件​是指程序、程序运行所需要的数据以及开发、使用和维护这些程序所需要的​文档的集合​。

3 程序设计语言的发展

程序设计语言是用来编写计算机程序的工具。

只有用​机器语言​编写的程序才能被计算机直接执行,其他任何语 言编写的程序都需要翻译成机器语言。

按照程序设计语言的发展历程,大致可分为​机器语言、汇编语言、 高级语言​3类。

1 机器语言

机器语言是由二进制0和1按一定规则组成的、能被计算机直接理 解和执行的指令集合。机器语言中的每一条语句实质上是一条指令。

【C++】(一)C++语言概述_后端_04

2 汇编语言

汇编语言,将机器指令的代码用英文助记符来表示,如MOV表示数据传送、ADD表示加、JMP表示程序跳转、HLT表示停机等。

【C++】(一)C++语言概述_c++_05

3 高级语言

高级语言是一种接近人的自然语言和数学公式的程序设计语言。 程序员无需与计算机的硬件打交道。

【C++】(一)C++语言概述_机器语言_06

4 C++语言

  • 1972年C语言诞生,由Dennis M. Ritchie设计;
  • 20世纪80年代出现面向对象的程序设计方法;
  • Bjarne Stroustrup于20世纪80年代初在C语言的基础上开发出了C++

【C++】(一)C++语言概述_后端_07

1. C++语言发展的里程碑:

  • 1979年 Bjarne Stroustrup开发设计
  • 1998年 ANSI/ISO C++标准建立 (C++98)
  • 1998年 《The C++ Programming Language》第三版
  • 2003年 ISO-IEC 14882-2003(简称C++03版本)
  • 2011年 ISO/IEC 14882-2011(简称C++11版本)

2. C++和C的关系:

C++保留了C语言原有的所有优点,增加了面向对象的机制;

C++是由C发展而来的,与C兼容,C++是C的超集;

用C语言写的程序基本上可以不加修改地用于C++;

C++既可用于面向过程的结构化程序设计,又可用于面向对象 的程序设计,是一种功能强大的混合型的程序设计语言。

3. C++对C的“增强”,表现在两个方面:

(1) 在原来面向过程的机制基础上,对C语言的功能做了不少扩充。

(2) 增加了面向对象的机制。所以,初学C++也有学习C的过程。

4. C++字符集

C++语法允许使用的字符的集合称为C++字符集(不在字符集的字符为不合法字符)。C++03标准的字符集如下:

【C++】(一)C++语言概述_c++_08

5. 关键字

关键字又称为保留字,是C++规定的有特定含义的词语。C++03 标准定义了63个关键字,主要是关于数据类型和语句的词语。

6 C++标识符:

  • 标识符(就是名字)只能由大小写字母、数字和下划线组成,且第一个字符必须是字母或下划线;
  • 字母是大小写区分的,即大写字母和小写字母被认为是两个不同的 字符;
  • 标识符不能是C++语言的关键字。

【C++】(一)C++语言概述_开发语言_09

7 简单的C++程序:

hello world

# include<iostream>    /*引入iostream这个头文件(里面包括输入输出流)*/
using namespace std; /*使用标准(std)命名空间(说明iostream是哪个命名空间)*/
int main() /*主函数,有且只有一个,且只能叫main*/
{
/*输出,cout是输出流的一个对象,<<为输出流的流提取(左)运算符以及流插入运算符(右)*/
/*endl:换行*/
cout << "hello, world" << endl;
return 0; /*主函数正常结束返回0*/
}

两数之和

# include<iostream>    
using namespace std;
int main()
{
int a, b, sum; //定义3个变量
cin >> a >> b; // 输入两个数
sum = a + b; // 计算两个数之和
cout << "a+b=" << sum << endl; //输出结果
return 0;
}

两个函数

# include<iostream>        // 标准输入输出函数库
# include<cmath> // 数学函数库
using namespace std; // 使用标准命名空间
double root(double x, double y) // root函数求x-y的平方根
{
if (x >= y) return sqrt(x - y);
else return 0;
}
int main()
{
double a, b; // 定义两个浮点型变量
cin >> a >> b; // 输入两个数
cout << root(a, b) << endl; //计算a-b平方根
return 0;
}

C++程序的特点:

  • (1)C++程序总是从main函数开始执行。
  • (2)书写格式自由。
  • (3)分号是语句的组成部分,表示语句结束。
  • (4)程序中可以加注释(​​//​​​或​​/**/​​),便于阅读。

”C++的目标是——在保证效率与C语言 相当的情况下,加强程序的组织性,保证同样功能的程序,C++更短小。”


C++程序设计-西北工业大学-魏英、姜学锋、刘君瑞