C++语言基础程序结构

2023/10/16
  • 你叫什么名字?
  • 我叫科塔娜
  • 你好科塔娜!
  • 你多大?
  • 22 岁
  • 你好!年轻的科塔娜!

想必你已经迫不及待地想动手写程序了吧,现在就开始写第一个 C++ 程序吧!在写代码前首先要明确想要用程序来达到什么样的目的。我们首先来学习用程序控制计算机输出上面的对话,下面给出了部分示例代码。








 






#include <iostream>
using namespace std;
int main() {
    /**
    开始
    ----------
    */
    cout << "你叫什么名字?" << endl;
    cout << "我叫科塔娜\n";
    cout << "你好科塔娜!" << endl;
    // ...
    return 0;
}

使用 Dev-C++工具可以快速得出结果哦,那么现在的你能大体猜出这段代码块的语言结构嘛?

在这段示例代码中,从高亮行开始到return 0结束是这段程序的核心部分,它的作用是控制计算机输出语句。

  • cout 是控制计算机输出的方法,它的具体定义在前面的 <iostream> 库中已经实现,在程序主体中直接调用就可以了。计算机输出的内容需要放在「<<」之后,并且用英文双引号("")括起来。每条语句的最后都需要用分号(;)表示结束。

那么其他的部分都是什么意思呢?

  • 前两行的作用是使用已有的方法。就像我们写字需要使用钢笔、编程需要敲击键盘一样,程序也需要使用已有的工具。
  • #include 是「包含」的意思,<iostream> 是一个用于输入输出流(input and output stream)的库,里面有一些可以用于输入、输出的方法。
  • using namespace std 是在 C++中的一种常见语句,用于指定命名空间,以便更容易访问标准库(Standard Library)中的各种功能和对象,而无需在每次使用它们时都显式指定命名空间。对于命名空间暂不展开讲解,这里仿照样例来写就可以了。
  • 主函数(main function),程序是从这里开始执行的。主函数的内容是以{开头,并以}结尾的中间部分,需要注意的是主函数并不必须写在顶部,在函数章节我们将对此讨论。
  • /** *///注释,前者一般用于多行,而后者一般用于单行。
  • return 0是主函数的返回值,表示主函数的结束。

在刚开始学习 C++ 语言期间,可以先不理解某部分的具体含义。在今后随着学习的深入,你的理解会更加透彻,而现在只要记住每次开始写代码前要先将框架部分写好,然后从主函数中开始写程序就好了。

// 基础框架示例
#include <iostream>
using namespace std;
int main() {
    // ...
    return 0;
}

细心的你可能已经发现了,与刚刚的小练习恭喜你安装成功啦!的程序打印相比,此程序的打印多了换行,而刚刚的练习却没有。

如果程序需要输出的内容有很多,除了在双引号内直接增加内容之外,还可以继续使用<<,在之后接上需要输出的内容。

cout << "我下一行要换行啦!" << "没有啊,你忘记使用换行符了。";

在 C++中,<< 不是用于拼接字符串的操作符。相反,它是用于输出数据到标准输出(通常是屏幕)的操作符。当你使用 << 时,它将右侧的数据追加到左侧的输出流。在前面的示例中,<< 用于将文本和变量的值输出到控制台。

如果你想要拼接字符串,通常可以使用+操作符来连接

cout << "我下一行要换行啦!" << endl << "是的,我现在和它不一行了。";

在这行代码中,endl 表示换行,可以把接下来的内容输出到下一行,它由英文单词 end(结尾)和英文单词 line(段落中的行)的首字母组成,表示换行。除了使用endl表示换行外,还可以使用/n的形式,同样也代表了换行。双引号中的内容称为字符串常量,关于字符串的知识你会在今后的学习中有更深入的了解。

小练习 用程序控制计算机输出你自己的名字,成功后笔试默写整个程序并添加新的功能,在已有基础上添加妈妈的名字并换行打印,要求默写笔试上机条件下能够成功运行

答案
// 包含头文件
#include <iostream>
// 使用命名空间
using namespace std;
// 主函数
int main() {
    // 输出
    cout << "刘熙宇";
    // ...添加换行打印,\n or endl
    // 返回
    return 0;
}

小练习 使用\*字符,用它构造一个底边长 5 个字符.髙 3 个字符的等腰字符三角形。该字符构成的等腰三角形,底边长 5 个字符,高 3 个字符。

  • 样例输出:
  *
 ***
*****
答案
#include <iostream>
using namespace std;
int main() {
    cout << " " << " " << "*" << " " << " " << endl;
    cout << " " << "*" << "*" << "*" << " " << endl;
    cout << "*" << "*" << "*" << "*" << "*" << endl;
    return 0;
}

# 重点小结

  1. #include:用于引入库函数的预处理命令。只有在引入库函数之后才能使用其中的内容。

  2. iostream:C++ 的输入输出流库,包含了常用的输入和输出流控制函数。

  3. namespace:命名空间,一种代码组织的形式,通过名称空间来对代码进行分类,区别不同的代码功能。通过 using namespace + 名称 的命令,可以在后面代码调用库函数时省略默认的命名空间。

  4. main():C++ 的程序入口,在执行该程序时调用的第一个函数。每个 C++ 程序也只能有一个主函数。

  5. // /** */:注释,以在 C++ 代码中包含注释,这将提高源代码的可读性。

  6. cout:用于在计算机屏幕上显示信息,通常与 << 连用,需要引入 <iostream> 库才可以使用。

  7. <<: 用于将文本和变量的值输出到控制台。

  8. 字符串常量:用双引号包括的 0 个或多个字符。

  9. \n: \n 表示内容为一个回车符的字符串。endl 输出一个换行符,并立即刷新缓冲区。

  10. endl:意思是 end of line,即一行输出结束,然后输出下一行,包含在 <iostream> 库的命名空间 std 中。

  11. return:函数的返回方法,在函数运行结束时,向调用函数的位置返回一个确定的值,也就是返回值。

上次更新: 2024-10-19 10:01:51