Hello, World!

一、最简 C++ 程序

int main()  // 最简C++程序
{

} Code language: JavaScript (javascript)
  1. 这段代码定义了一个只有main的函数,没有入参、不执行任何操作。
  2. 大括号{ 表示这个main函数的开始位置,}表示这个main函数的函数体的结束位置,正常要执行的代码放{}里面。
  3. 双斜杠//代表单行注释,从//到本行末尾的内容仅给人来阅读,编译器会直接忽略注释;
  4. 每个完整 C++ 程序必须有且仅有一个全局main()函数,程序运行时会从main开始执行
  5. int代表函数返回整数,函数体内部,返回0表示程序正常执行,返回非0表示出错了。
  6. 上面5中的这个返回值,Unix/Linux 系统会读取这个返回值,Windows 程序大多不会用到。

二、标准输出 Hello World 完整示例

#include <iostream>

int main()
{
    std::cout << "Hello, World!\n";
}Code language: C++ (cpp)
  • #include <iostream>:告诉编译器引入标准输入输出流库的声明。如果没有这一行,std::cout输出语句无法识别;

iostream 就是我们前面说的标准库的一个,属于编译器内置的用C++开发好的代码,用它可以进行一些输入和输出有关的,例如输出一行文字在控制台中。

  • << 输出运算符:把右侧内容写入左侧输出对象std::cout。本例中将字符串"Hello, World!\n"打印(不是打印机的打印,是输出)到标准控制台(CMD终端)输出std::cout
  • “Hello, World!\n”,这是字符串字面量:双引号包裹的文本;转义字符\n代表换行符,打印后光标自动跳到下一行
  • std:::命名空间限定符,代表cout是标准库std下的组件。我们后面会介绍using namespace std;,省略std::前缀,直接使用cout

所谓命名空间限定符,目的是防止同名,所以给这些库一个前缀的名字,举例子:如果一个班里面有两个同名同姓的同学,为了区分,老师可能会增加一些修饰词,例如:Jason One ,Jason Two,给这两个人一个编号,这个编号就类似这里的std的作用。

完整例子

下面例子,定义了两个额外的函数,在main函数中调用其中一个函数,然后这个函数又调用另外一个函数。这里是计算圆的面积,输入半径,然后打印圆的面积。

#include <iostream>
using namespace std; //加入了std命名空间后 下面就可以不需要写std了 

// 计算圆面积
double circle_area(double x)
{
    return 3.14 * x * x;
}

// 打印圆面积
void print_circle_area(double r)
{
    cout << "The area of circle with radius " << r << " is " << circle_area(r) << "\n";
}

int main()
{
    print_circle_area(2.0); // 半径2,输出圆面积
    return 0;
}Code language: C++ (cpp)

执行结果

The area of circle with radius 2 is 12.56Code language: JavaScript (javascript)

cout 可以连续使用 << 来输出多次内容,如果没有输出\n 则一直会在一行里面输出。除了可以输出字符串字面量,还可以输出其他的变量,理这里的r,就是把double的r输出了。

void print_circle_area(double r),这里的小括号(double r) 就是入参,所谓入参,意思是这个参数r是外面调用的时候传入给函数内部的,所以main函数中调用 print_circle_area(2.0);的时候,会传入了2.0,然后到了这个函数里面的时候,r的值就是2.0了,它是外面传递进来的。然后下一句中的cout 输出了 文本和r 然后又输出了circle_area(r) ,这里是调用circle_area这个函数,继续把函数里面的r的值,通过调用double circle_area(double x)这个函数的时候,又把r的值2.0传给了x,当到达double circle_area(double x)这个函数里面的时候,x的值也是2.0,然就计算3.14 * 2 * 2; 然后得到结果12.56后, 通过return返回结果回去,返回后。相当于回到上一个调用它的地方:然后输出12.56,类似如下:

cout << "The area of circle with radius " << r << " is " <<  12.56 << "\n";Code language: C++ (cpp)

输出完毕后,} 然后结束print_circle_area,然后回到main函数。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注