每个C++程序都包含一个或者多个函数,但是必须有一个命名为main(),也就是整个程序的入口,和操作系统交互。操作系统通过调用main()函数来执行程序,main()函数则执行组成自己的语句并返回一个值给操作系统。
下面是一个
最简单的main函数,不执行任何功能,只是返回一个值。
int main()
{
return 0;
}
注解:返回值0往往表示main函数成功执行完毕。其他非零值都要操作系统定义的含义。通常非零返回值表明有错误出现,每一种操作系统都有自己的方式告诉用户main函数返回什么内容。
调用IO库,实现helloworld:
#include<iostream>
int main()
{
std::cout << "Hello World!" << std::endl;
return 0;
}
要求用户给出两个数,然后输出她们的和:
#include<iostream>
int main()
{
int a, b;
std::cin >> a >> b;
std::cout << "The sum of " << a << " and " << b << " is " << a+b << std::endl;
return 0;
}
程序的第一行是一个预处理指示
#include<iostream>
告诉编译器要使用iostream库。尖括号里的名字是一个头文件,程序使用库工具时候必须包含相关的头文件。#include 指示必须单独写成一行——头文件名和#include必须在同一行。通常,#include指示器在程序的开头,在任何函数的外部。
写入到流:
std::cout << "The sum of " << a << " and " << b << " is " << a+b << std::endl;
输出操作符(<<)需要两个操作数,左操作数是ostream对象,右操作数是输出的值。操作符将其右操作数写入到左操作数的ostream对象中。这个表达式,最终返回的是左操作数,也就是返回的值是输出流本身。
上面表达式等同于分开写成:
std::cout << "The sum of " ;
std::cout << a ;
std::cout << " and ";
std::cout << b;
std::cout << " is " ;
std::cout << a+b;
std::cout << std::endl;
读入流:
std::cin >> a >> b;
理解方式同上述“写入到流”。
注解:std::cout 里面的std::表明cout是定义在命名空间(namespace)std 中的。使用命名空间,成员可以避免由于无意中使用了与库中所定义名字相同的名字而引致冲突。因为标准库定义的名字定义在命名空间中,所以我们可以按自己的意图来使用相同的名字。