1.1 编写简单的C++程序
每个C++程序都包含一个或多个函数,而且必须有一个命名为main。函数由执行函数功能的语句序列组成。操作系统通过调用main函数来执行程序,main函数则执行组成自己的语句并返回一个值给操作系统。
每个C++程序都必须含有main函数,且main函数是唯一被操作系统显示调用的函数。
main函数的返回值必须是int类型,该类型表示整数。
函数体是函数定义的最后部分,是以花括号开始并以花括号结束的语句块。
return语句将终止函数。
C++中多数语句以分号作为结束标记。
1. 程序源文件命名规范
程序文件称作源文件,文件后缀表明该文件是程序。文件后缀通常也表明程序是用什么语言编写的,以及选择哪一种编译器运行。
2. 从命令行运行编译器(VS2010)
C:\Documents and Settings\10170660\Desktop\2>cl -EHsc CPlusPlusProject.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.30319.01 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
CPlusPlusProject.cpp
Microsoft (R) Incremental Linker Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.
/out:CPlusPlusProject.exe
CPlusPlusProject.obj
C:\Documents and Settings\10170660\Desktop\2
文件夹“C:\Documents and Settings\10170660\Desktop\2”下,除了需要有要编译的程序源文件外,还要有两个头文件“stdafx.h”,“targetver.h”。
#include "stdafx.h"
#include <iostream>
int main()
{
std::cout << "Enter two numbers:" <<std::endl;
int v1, v2;
std::cin>>v1 >>v2;
std::cout << "The sum of " << v1 <<" and " << v2 << " is " << v1+v2 << "." << std::endl;
return 0;
}
#include "stdafx.h" 头文件预编译,就是把一个工程中使用的一些MFC标准头文件预先编译,以后该工程编译时,不再编译这部分头文件,仅仅使用预编译的结果。这样可以加快编译速度,节省时间。
#include <iostream> 告诉编译器要使用iostream库。尖括号里的名字是一个头文件。
1. 写入到流
<< 输出操作符,每个输出操作符实例都接受两个操作数“做操作数必须是osstream对象;右操作数是要输出的值。
既然输出操作符返回的是其左操作数,那么我们就可以将输出请求链接在一起。
std::cout << "Enter two numbers:" <<std::endl;
等价于:
std::cout << "Enter two numbers:" ;
std::cout << std::endl;
endl是一个特殊值,称为操纵符,将它写入输出流时,具有输出换行的效果,并刷新与设备相关联的缓冲区。通过刷新缓冲区,用户立即可以看到写入到流中的输出。
2. 使用标准库中的名字
前缀std::表明cout和endl是定义在命名空间(namespace)std中的。使用命名空间,程序员可以避免由于无意中使用了与库中所定义名字相同的名字而引致冲突。因为标准库定义的名字是定义在命名空间中,所以我们可以按自己的意图使用相同的名字。
标准库使用命名空间的副作用是,当我们使用标准库中的名字时,必须显式地表达出使用的是命名空间std下的名字。
std::的写法使用了作用域操作符(scope operator,::操作符)。
3. 读入流
输入操作符(>>操作符)行为和输出操作符相似。它接受一个istream对象作为其左操作数,接受一个对象作为其有操作数,它从istream操作数读取数据并保存在右操作数中。像输出操作符一样,输入操作符返回其做操作符作为结果。由于输入操作符返回其左操作符,我们可以将输入请求序列合并成单个语句。
std::cin>>v1 >>v2;
等价于: std::cin >> v1;
std::cin >> v2;
4. 完成程序
iostream库定义了接受全部内置类型的输入输出操作符版本。
已初始化变量是指变量在定义时就给定一个值。未初始化变量则未给定初始值。给变量一个初始值几乎总是正确的,但不要求必须这样做。如果不能保证读取变量之前重置变量,就应该初始化变量。