1.1 编写一个简单的C++程序
- 每个C++程序都包含一个或多个函数,其中一个必须命名为main,因为操作系统是通过调用main来运行C++程序
- 一个函数的定义包含四部分:
① 函数返回类型(main函数的返回类型必须为int,用来指示状态,返回0表示成功,非0用来指示错误类型) ② 函数名 ③ 形参列表 ④ 函数体 - GNU编译器命令
g++ -o prog1 prog.cpp
1.2 初识输入输出
C++中的iostream库包含两个基础类型istream和ostream,标准库定义了四个IO对象:
- istream类型:cin,标准输入对象
- ostream类型:
① cout,标准输出对象 ② cerr,标准错误对象,输出警告和错误信息 ③ clog,输出一般性信息
1.3 注释简介
- 单行注释://
- 界定符对注释:/* */,注释界定符不能嵌套!
1.4 控制流
- while语句:反复执行一段代码,直到给定条件为假为止。
#include <iostream>
int main()
{
std::cout << "Enter two integers:" << std::endl;
int num1, num2;
std::cin >> num1 >> num2;
if (num1 == num2) std::cout << num1 << std::endl;
else if (num1 > num2){
int i = num1 - 1;
while (i > num2){
std::cout << i << std::endl;
--i;
}
}
else {
int i = num2 - 1;
while (i > num1){
std::cout << i << std::endl;
--i;
}
}
return 0;
}
- for语句:每个for语句包含循环头和循环体两部分。循环头由初始化语句、循环条件和表达式三部分组成,用分号分隔。
#include <iostream>
int main()
{
std::cout << "Enter two integers:" << std::endl;
int num1, num2;
std::cin >> num1 >> num2;
if (num1 == num2) std::cout << num1 << std::endl;
else if (num1 > num2){
for (int i = num1 - 1; i > num2; --i) std::cout << i << std::endl;
}
else {
for (int i = num2 - 1; i > num1; --i) std::cout << i << std::endl;
}
return 0;
}
- 读取数量不定输入数据:使用istream对象作为条件,当遇到文件结束符或无效输入时,istream的状态会无效,处于无效状态的istream对象会使条件变为假。
#include <iostream>
int main()
{
int sum=0, val=0;
while (std::cin >> val) sum += val;
std::cout << sum << std::endl;
return 0;
}
#include <iostream>
int main()
{
int sum = 0;
for (int val=0; std::cin >> val; ) sum += val;
std::cout << sum << std::endl;
return 0;
}
1.5 类简介
Sales_item item;
与python中创建类的对象有所不同:
class Car():
def __init__(self, x):
print(x)
car = Car(6)
- 成员函数:也被称为方法,参照python中类的方法即可。
#include <iostream>
#include "Sales_item.h"
using namespace std;
int main()
{
Sales_item currItem, item;
if (cin >> currItem)
{
int cnt = 1;
while (cin >> item)
{
if (currItem.isbn() == item.isbn())
++ cnt;
else
{
cout << currItem << " occurs " << cnt << " times" << endl;
currItem = item;
cnt = 1;
}
}
cout << currItem << " occurs " << cnt << " times" <<endl;
return 0;
}
else
{
cerr << "Please enter valid data." << endl;
return -1;
}
}
|