且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《c++语言导学》——1.3 Hello,World!

更新时间:2022-10-06 17:05:00

本节书摘来自华章计算机《c++语言导学》一书中的第1章,第1.3节,[美] 本贾尼·斯特劳斯特卢普 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.3 Hello,World!

我们能接触到的最小的C++程序如下所示:


《c++语言导学》——1.3 Hello,World!

这段代码定义了一个名为main的函数,该函数既不接受任何参数,也不做什么实际工作。
在C++中,花括号{}表示成组的意思,上面的例子里它指出函数体的首尾边界。从双斜线//开始直到该行结束是注释,注释只供人阅读和参考,编译器会直接略过注释。
在每个C++程序中有且仅有一个名为main()的全局函数,main()函数是程序执行过程的起始点。如果main()返回一个int值,则这个值由程序返回给“系统”。如果main()不返回任何内容,则系统也会收到一个表示程序成功完成的值。来自main()的非零值表示程序失败。并非每一个操作系统和执行环境都会用到这个返回值:基于Linux/Unix的环境通常会用到,而基于Windows的环境一般不会用到。
通常情况下,程序会产生某些输出结果。例如,下面这个程序负责输出Hello, World!:

《c++语言导学》——1.3 Hello,World!

代码行#include指示编译器把iostream中涉及标准流I/O功能的声明包含(include)进来。如果没有这些声明,表达式

《c++语言导学》——1.3 Hello,World!https://yqfile.alicdn.com/7c843704a0e6068cf04d0f7ff005422d314657ad.png
" >

无法正确执行。运算符<<(“输出”)把它的第二个参数写入第一个参数。在这个例子里,字符串字面值常量"Hello, World!n"被写入标准输出流std::cout。我们所说的字符串字面值常量是指一对儿双引号内的字符序列。在字符串字面值常量中,反斜线紧跟一个其他字符组成一个“特殊字符”。在这个例子中,n是换行符,因此最终的输出结果是Hello, World!,后面紧跟一个换行。
符号std::负责指定名字cout所在的标准库命名空间(见3.3节)。本书在讨论标准特性时通常会省略掉std::,在3.3节中我们将介绍在不使用显式限定符的情况下如何让命名空间中的名字可见。
基本上所有可执行代码都要放在函数中,并且被main()直接或间接地调用。例如:

《c++语言导学》——1.3 Hello,World!https://yqfile.alicdn.com/fa7e34e8b124124eb88cbdbed42df4a0e3de1230.png" >

在上面的代码中,“返回类型”void表示函数print_square不返回任何值。