程序源文件后缀通常也表明程序是用什么语言编写的,以及选择哪一种编译器运行。C++程序源文件通常后缀名包括:.cpp .cc .cxx .cp .C(linux & unix) .cpp(Windows)
2. 标准输入与输出对象
#include <iostream> //预处理指令,告诉编译器要使用标准库中iostream库;此预处理指令用于包含头文件,程序的预处理指令位于文件开头位置
//main函数为程序入口函数,C++要求main函数返回值类型为int
int main(int argc, char** argv)
{
//std::表明cout、cin、endl等是定义在命名空间std中的。::为作用域操作符
std::cout << "Enter two numbers:" << std::endl;
int v1, v2;
//cin为标准库中istream类型的对象,称之为标准输入;>>为输入操作符
std::cin >> v1 >> v2;
//cout为标准库中ostream类型的对象,称之为标准输出;<<为输出操作符
std::cout << "The sum of " << v1 << " and " << v2
<< " is " << v1 + v2 << std::endl; //endl为一个特殊值,称为操纵符;作用为刷新设备缓冲区并输出换行,通过刷新缓冲区查看到流中数据
return 0;
}
C++并没有直接定义输入与输出的任何语句,这些功能由标准库提供。标准库中定义了4个IO对象。
cin标准输入;cout标准输出;cerr标准错误;还有clog用于产生程序执行的一般信息。 大部分操作系统提供了重定向输入或输出流的方法,通过重定向可以这些流数据与程序中指定的文件联系起来,实现各种复杂的IO文件操作等。
3. 注释
第一种:
Code xxx 1
// 我是注释1
Code xxx 2
第二种:
Code xxx 1
/* 我是注释1 我是注释2 我是注释3*/
Code xxx 2
第三种:
Code xxx 1
#if 0我是注释1 我是注释2 我是注释3#endif
Code xxx 2
4. 控制结构
结构化程序设计中三种基本控制结构:顺序、选择、循环。
4.1 while语句
while (条件表达式)
{
条件为真时执行的语句;
条件参数变更表达式;
}
4.2 for语句
for (初始化语句; 条件表达式; 条件参数变更)
{
条件为真时执行的语句;
}
4.3 if语句
if (条件表达式)
{
条件为真时执行的语句;
}
else
{
条件为假时执行的语句;
}
5. 术语
class
用于自定义数据结构的 C++ 机制。类是 C++ 中最基本的特征。标准库类型,如 istream 和 ostream,都是类。
class type
由类所定义的类型,类型名就是类名。
member function(成员函数)
类定义的操作。成员函数通常在特定的对象上进行操作。
method(方法)
成员函数的同义词。
uninitialized variable(未初始化变量)
没有指定初始值的变量。类类型没有未初始化变量。没有指定初始值的类类型变量由类定义初始化。在使用变量值之前必须给未初始化的变量赋值。未初始化变量是造成 bug 的主要原因之一。
() operator[()操作符]
调用操作符。跟在函数名后且成对出现的圆括号。该操作符导致函数被调用,给函数的实参可在括号里传递。
++ operator(++操作符)
自增操作符。将操作数加 1,++i 等价于 i = i + 1。
+= operator(+= 操作符)
复合赋值操作符,将右操作数和左操作数相加,并将结果存储到左操作数中;a += b 等价于 a = a + b。
. operator(. 操作符)
点操作符。接受两个操作数:左操作数是一个对象,而右边是该对象的一个成员的名字。这个操作符从指定对象中取得成员。
:: operator(:: 操作符)
作用域操作符。在其他的使用过程中,:: 操作符用于在命名空间中访问名字。例如,std::cout 表示使用命名空间 std 中的名字cout。
namespace(命名空间)
将库所定义的名字放至单独一个地方的机制。命名空间有助于避免无意的命名冲突。C++ 标准库所定义的名字在命名空间 std 中。
condition(条件)
求值为真或假的表达式。值为 0 的算术表达式是假,其他所有非 0 值都是真。
function(函数)
有名字的计算单元。
function body(函数体)
定义函数所执行的动作的语句块。
function name(函数名)
函数的名字标识,函数通过函数名调用。
header(头文件)
使得类或其他名字的定义在多个程序中可用的一种机制。程序中通过 #include 指示包含头文件。 标准库的头文件用尖括号 < > 括起来,非标准库的头文件用双引号 " " 括起来。
main function(主函数)
执行 C++ 程序时,操作系统调用的函数。每一个程序有且仅有一个主函数 main。
preprocessor directive(预处理指示)
C++ 预处理器的指示。#include 是一个预处理器指示。预处理器指示必须出现在单独的行中。
return type(返回类型)
函数返回值的类型。
source file(源文件)
用来描述包含在 C++ 程序中的文件的术语。
standard error(标准错误)
用于错误报告的输出流。通常,在视窗操作系统中,将标准输出和标准错误绑定到程序的执行窗口。
standard input(标准输入)
和程序执行窗口相关联的输入流,通常这种关联由操作系统设定。
standard library(标准库)
每个 C++ 编译器必须支持的类型和函数的集合。标准库提供了强大的功能,包括支持 IO 的类型。C++ 程序员谈到的“标准库”,是指整个标准库,当提到某个标准库类型时也指标准库中某个特定的部分。例如,程序员提到的“iostream 库”,专指标准库中由 iostream 类定义的那部分。
statement(语句)
C++ 程序中最小的独立单元,类似于自然语言中的句子。C++ 中的语句一般以分号结束。
std
标准库命名空间的名字,std::cout 表明正在使用定义在 std 命名空间中的名字 cout。
buffer(缓冲区)
一段用来存放数据的存储区域。IO 设备常存储输入(或输出)到缓冲区,并独立于程序动作对缓冲区进行读写。输出缓冲区通常必须显式刷新以强制输出缓冲区内容。默认情况下,读 cin 会刷新 cout;当程序正常结束时,cout 也被刷新。
curly brace(花括号)
花括号对语句块定界。左花括号“{”开始一个块,右花括号“}”结束块。
end-of-file(文件结束符)
文件中与特定系统有关的标记,表示这个文件中不再有其他输入。 windows:Ctrl+z Unix:Ctrl+d