我的github

第1章 开始

本章介绍C++的大部分基础内容:类型、变量、表达式、语句及函数。在这个过程中,我们会简要介绍如何编译及运行程序。在学习完本章并认真完成练习之后,你将具备编写、编译及运行简单程序的能力。后续章节将假定你已掌握本章中介绍的语言特性,并将更详细地解释这些特性。

学习一门新的程序设计语言的最好方法就是练习编写程序。在本章中,我们将编写一个程序来解决简单的书店问题。 我们的书店保存所有销售记录的档案,每条记录保存了某本书的一-次销售的信息 (一册或多册)。每条记录包含三个数据项:

0-201-70353-X    4    24.99

第一项是书的ISBN号,第二项是售出的册数,最后一项是书的单价。有时,书店老板需要查询此档案,计算每本书的销售量、销售额及平均售价。

为了编写这个程序,我们需要使用若干个C++的基本特性。而且,我们需要了解如何编译及运行程序。

虽然我们还没有编写这个程序,但显然它必须:

- 定义变量

- 进行输入和输出

- 使用数据结构保存数据

- 检测两条记录是否有相同的ISBN

- 包含一个循环来处理销售档案中的每条记录

我们首先介绍如何用C++来解决这些子问题,然后编写书店程序。

1.1 编写一个简单的C++程序

每个C++程序都包含一个或多个函数(function),其中一个必须命名为main。操作系统通过调用main来运行C++程序。下面是一个非常简单的main函数,它什么也不干,只是返回给操作系统一个值:

int main()
{
    return 0;
}

一个函数的定义包含四部分:返回类型(return type)、函数名(function name)、一个括号包围的形参列表(parameter list,允许为空)以及函数体(function body)。虽然main函数在某种程度上比较特殊,但其定义与其他函数是一样的。

1.1.1 编译、运行程序

根据使用的GNU编译器的版本,可能需要指定-std=c++0x参数来打开对C++11的支持。

1.2 初始输入和输出

C++语言并未定义任何输入输出(IO)语句,取而代之,包含了一个全面的标准库(standard library)来提供IO机制(以及很多其他设施)。对于很多用途,包括本书中的示例来说,我们只需要了解IO库中的一部分基本概念和操作。

本书中的很多示例都使用了iostream库。iostream库包含两个基础类型istream和ostream,分别表示输入流和输出流。

-标准输入输出对象

标准库定义了4个IO对象。为了处理输入,我们使用一个名为cin的istream类型的对象。这个对象也被称为标准输入(standard input)。对于输出,我们使用一个名为cout的ostream类型的对象。此对象也被称为标准输出(standard output)。标准库还定义了其它两个ostream对象,名为cerr和clog。我们通常用前者输出警告和错误信息,因此它被称为标准错误。而后者用来输出程序运行时的一般性信息。

-一个使用IO库的程序

在书店程序中,我们需要将多条记录合并成单一的汇总记录。作为一个相关的,但更简单的问题,我们先来看一下如何将两个数相加。通过使用IO库,我们可以扩展main程序,使之能提示用户输入两个数,然后输出它们的和:

#include <iostream>
int main()
{
    std::cout << "Enter two numbers:" << std::endl;
    int v1 = 0, v2 = 0;
    std::cin >> v1 >> v2;
    std::cout << "The sum of " << v1 << " and " << v2 << " is " << v1 + v2 << std::endl;
    return 0;
}

<<运算符接受两个运算对象:左侧的运算对象必须是一个ostream对象,右侧的运算对象是要打印的值。此运算符将给定的值写到给定的ostream对象中。输出运算符的计算结果就是左侧运算对象。

posted on 2023-05-10 09:43  XiaoNiuFeiTian  阅读(13)  评论(0编辑  收藏  举报