目录
【例1.1】输出一行字符“This is a C++ program.”
一、从C到C++
C语言是结构化和模块化的语言,C语言的设计者必须细致地设计程序中的每个细节,准确地考虑程序运行时每一时刻发生的事情,当程序规模变大时,结构化程序设计就显得力不从心。
C++既可以用于面向过程的结构化程序设计,也可用于面向对象的程序设计。C++对C的增强体现在两个方面:
- 对原来的面向过程机制做了扩充
- 增加了面向对象的机制
学习C++之后,既可以进行面向对象的程序设计,也可以进行面向过程的程序设计。
二、C++语言的词法和词法规则
1.C++语言的字符集
等同于C语言的字符集,包括:
- 大小写英文字母
- 数字字符
- 其他ASCII码字符
2.单词及词法规则
单词是构成语句的关键成份之一,通常由若干字符组成,C++有几种单词:
(1)关键字
是C++语言中的命令字,它是预定义好的单词,C++编译程序对其有专门的解释。如int、float、if、else、while、switch等等。
(2)标识符
程序员用标识符对程序中的元素实施命名,包括函数名、类名、对象名、类型名、变量名、常变量名、数组名等。
标识符以字母或下划线开始,后跟字母、数字、下划线。标识符区分大小写字母。
(3)运算符
运算符代表某种操作的单词,由一个或多个字符组成。注意运算符的优先级和综合顺序。
(4)分隔符
在语句中关键字和标识符之间、各个语句之间要用分隔符分开。C++常用的分隔符有空格、逗号、分号、冒号大括号。
(5)注释符
C++提供了两种注释符:
- /* 注释 */
- // 注释
三、最简单的C++程序
【例1.1】输出一行字符“This is a C++ program.”
#include <iostream> //用cout输出时需要用
using namespace std; //使用命名空间std
int main()
{
cout << "This is a C++ program.\n";
return 0;
}
【注】
- 标准C++规定main函数必须声明为int类型,如果程序正常运行,向操作系统返回一个零值,否则返回非零值,通常是-1
- C++程序可以用/* 注释 */做多行注释,也可以用// 做单行注释
- C++程序常用cout、cin进行输出输入,cout是C++定义的输出流对象,<<是插入运算符
- 使用cout、cin需要用头文件iostream,在程序开始要用#include声明包含的头文件
- using namesapce std;意思是使用命名空间。C++标准库中的类和函数是在命名空间std中声明的,因此程序中如果用C++标准库中的有关内容(此时需要用#include命令行),就要用using namespace std;语句声明
【例1.2】求a和 b两个数之和
#include<iostream> //预处理命令
using namespace std; //使用命名空间
int main()
{
int a,b,sum;
cin>>a>>b;
sum=a+b;
cout<<"a+b="<<sum<<endl;
return 0;
}
【注】
- cin是C++定义的输入流对象。“>>”是提取运算符,与cin配合,其作用是从设备中提取数据送到输入流cin中。在程序执行时,键盘输入的第一个数据赋予a,第二个数据赋予b
- cout语句中大哥endl是C++控制符函数,作用是让光标换行
【例1.3】求两个数中的大数
#include <iostream>
using namespace std;
int main()
{
int max(int x, int y); //对max函数做声明
int a, b, c;
cin >> a >> b;
c = max(a, b); //调用max函数
cout << "max=" << c << endl;
return 0;
}
int max(int x, int y)
{ //定义max函数
int z;
if (x > y)
z = x;
else
z = y;
return (z);
}
四、C++对C的扩充
1.C++的输入输出
C++为了方便使用,除了可以利用printf和scanf函数进行输入和输出外,还增加了标准输入流输出流cin和cout。他们是在头文件iostream中定义的,标准流是不需要打开文件和关闭文件就能直接操作的流式文件,在此标准输入流是指从键盘上输入的数据,标准输出流是指向屏幕输出的数据流。
C++预定义的标准流 | ||
流名 | 含义 | 隐含设备 |
cin | 标准输入 | 键盘 |
cout | 标准输出 | 屏幕 |
cerr | 标准出错输出 | 屏幕 |
clog | cerr缓冲形式 | 屏幕 |
(1)用cout进行输出
- 【格式】cout<<表达式1[<<表达式2……]
- 【功能】由左向右逐个计算表达式的值,将其插入到输出流cout中
- cout必须与输出运算符<<一起使用,每个<<后跟一个表达式,<<运算符的结合方向是从左向右,所以各个表达式的值按从左到右的顺序插入到输出流中
- endl是C++输出流的常数,在头文件iostream中定义,代表让光标换行。在C++中也可以用“\n”控制光标换行。
(2)用cin进行输入
- 【格式】cin>>变量1[>>变量2……]
- >>是C++的提取运算符,表示从标准输入设备取得数据,赋予其后的变量
- 从键盘输入数值数据时,两个数据之间用空格分隔或用回车分隔
(3)cin和cout的使用
#include <iostream>
using namespace std;
int main() {
cout << "please enter your name and age:" << endl;
char name[10];
int age;
cin >> name;
cin >> age;
cout << "your name is" << name << endl;
cout << "your age is" << age << endl;
return 0;
}
2.用const定义常变量
(1)格式
const 类型 变量名 = 常数
(2)例
const float PI = 3.14159;
3.函数原型声明
(1)含义
C++规定,如果函数调用在函数定义之前,要求在调