第一章
本章介绍C++大部分基础内容:类型、变量、表达式、语句及函数。在这个过程中,我们会简单介绍如何编译及运行程序。
首先关于函数的定义,一个函数包括四个部分:返回类型(return type)、函数名(function name)、一个括号包围的形参列表(parameter list,可以为空)以及函数体(function body)。
最简单的函数
int main()
{
return 0;
}
1.关于main()
每个C++程序都包括一个或多个函数,其中一个必须命名为mian,操作系统通过调用main,来运行C++程序。
2.retuen 0;
给操作系统返回一个值,int类型。在大多数系统中,main的返回值用来指示状态。返回值0表明成功,非0的返回值的含义由系统定义,通常用来指出错误类型。
3.关于输出输入(IO)语句
iostream库包括istream(输入流)与ostream(输出流)两个基础类型。
输入为istream类型的cin对象。同理还有为输出的cout、为输出警告和错误信息的cerr、为输出程序运行时的一般性消息的clog。
例,简单的求和函数
#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;
}
通过提示用户输入两个数字(上图为 1 2 ),然后回车,程序计算结果( 3 )
#include<iostream>是由#include 指令来告诉编译器,我们要用<>中名字的相应库。且#include指令和头文件的名字必须写在同一行。
main的函数体的第一条语句执行了一个表达式,一个表达式产生一个结果,它由一个或多个运算对象和一个运算符组成。
<<运算符(输出运算符)接受两个运算对象,左侧对象必须是一个ostream对象,右侧对象是要打印的值。次运算符将给定的值写到给定的ostream对象中,输出运算符的计算结果就是左侧的运算对象。
当我们使用了两次<<运算符的时候,第一个运算符的结果成为了第二个运算符的左侧运算对象。
std::cin>>v1>>v2;
//等价于
(std::cin>>v1)>>v2;
>>运算符(输入运算符)接受一个istream作为其左侧运算对象,接受一个对象作为其右侧运算对象。它从给定的istream读入数据,并存入给定对象中。与输出运算符类似,输入运算符返回其左侧运算对象作为其计算结果。当使用两次>>运算符的时候,第一个输入存进第一个位置,第二个输入存进第二个位置。
4.关于endl
这是一个被称为操纵符的特殊值,写入endl的效果是结束当前行,并将与设备关联的缓冲区中的内容刷到设备中,缓冲刷新操作可以保证到目前为止程序所产生的所有输出都真正写入输出流中,而不是仅停留在内存中等待写入流。
5.关于前缀命名空间std::
前缀std::指出名字cout和endl是定义在名为std的命名空间中的,命名空间可以帮助我们避免不经意的名字定义冲突,以及使用库中相同名字导致的冲突,标准库定义的所有名字都在命名空间std中。