当前位置: 首页 > news >正文

【C/C++】C/C++编程——第一个 C++ 程序:HelloWorld

第一个 C++ 程序:HelloWorld

大家好,我是 shopeeai,也可以叫我虾皮,中科大菜鸟研究生。昨天我们成功搭建好了 C++ 的开发环境,今天我们来介绍一下第一个 C++ 程序,打印一个"hello world"。首先我们先贴一下示例代码和运行结果,然后再逐行讲解一下这段代码。

示例代码

//这是第一个C++程序
#include<iostream>
using namespace std;int main()
{ cout << "hello world" << endl;return 0;
}

运行结果

在这里插入图片描述

可以看到终端中成功输出了我们想要打印的文字"hello world"。

首先分析一下第一行,//这是第一个C++程序, 这是注释行。

在 C++ 中,注释是用来解释代码的文本,它们对程序的编译和执行没有影响。C++ 提供了两种主要的注释方式:单行注释和多行注释。

  1. 单行注释:使用两个斜杠 // 标记。编译器会忽略从 // 开始到该行末尾的文本。单行注释通常用于对代码行或代码块进行简短的说明。

    示例:

// 这是一个单行注释
cout << "Hello World";  // 在代码行的末尾添加注释
  1. 多行注释 :也称为块注释,使用 /* 开始和 */ 结束。这种注释可以跨越多行,用于解释复杂的代码段或提供详细的信息。在 /**/ 之间的所有内容都将被编译器忽略。

    示例:

/* 这是一个多行注释的示例它可以跨越多行。这些行都不会影响程序的编译和执行。
*/
cout << "Hello World";

注释可以帮助其他开发者理解代码的目的和工作原理,也可以帮助调试过程中排除错误。在一些高级场景中,注释(特别是多行注释)还可以用于自动生成文档。

第二行 #include<iostream>,在 C++ 程序中,#include<iostream> 是一个预处理指令,用于在编译之前包含标准输入输出流库(iostream)。预处理指令是在编译阶段之前执行的指令,它们通常用于包含(include)文件、条件编译等。在这种情况下,#include 用于包含或插入指定的文件内容。iostream 是一个标准库文件,它是 C++ 标准库的一部分。尖括号 < > 表示这是一个标准库文件,编译器会在标准库的目录中查找它。

iostream 库包含了处理输入和输出的功能,主要通过提供输入输出流对象,例如 cincoutcerrclog

总结一下,#include<iostream> 使 C++ 能够使用标准输入输出流进行基本的输入输出操作,也就是包含了这个库之后,我们就可以把"hello world"输出到屏幕上。

第三行,using namespace std; 是一个使用指令,它告诉编译器使用标准命名空间(std)。using 是一个 C++ 关键字,用于引入命名空间中的名称。namespace 是一个 C++ 关键字,用于指定一个命名空间。命名空间是一种封装名字的方式,用于避免名称冲突。std 这是 C++ 标准库中定义的命名空间。标准库的许多功能(如输入输出流、字符串、容器等)都定义在这个命名空间中。

当使用 using namespace std; 后,可以直接使用定义在 std 命名空间中的名称(如 cout, cin, vector, string 等),就不需要在每个名称前添加 std:: 前缀了。没有这个指令,你需要写 std::cout 来调用标准输出流。使用了这个指令后,就可以直接写 cout 了。

第四行为空行,第五行,int main**()**是一个特殊的函数,它是程序执行的入口点。任何一个 C++ 程序的执行都从 main 函数开始的。 int 表示整型,在这里用来指定 main 函数返回一个整数给操作系统。这个返回值通常用来表示程序的退出状态:0 表示成功,非零值表示错误或异常情况。

main() 是函数的名称和参数列表。在这个例子中,main 函数没有接受任何参数(空的括号 () 意味着没有参数)。在某些情况下,main 函数可以接受参数,用于处理命令行参数。这种情况下,函数签名可能会是 int main(int argc, char *argv[]),其中 argc 表示命令行参数的数量,argv[] 是一个指向参数字符串的指针数组。

第六行,第九行,{} 用于定义一个代码块的开始和结束。

第七行,cout << "hello world" << endl; 这行代码的作用是在控制台上输出字符串 “hello world”,然后换行。它是 C++ 中的一个标准输出语句,用于将文本信息输出到控制台。cout 是 C++ 中的一个标准输出流对象,用于将数据发送到标准输出,一般就是屏幕。<< 是一个插入操作符。它用于将右侧的数据传送到左侧的输出流中。这个操作符可以被多次连续使用,以便在单个语句中输出多个项。

"hello world" 表示的就是我们想要显示在屏幕的内容。endl 这是一个特殊的输出流操纵符,用于在输出流中插入一个换行符,然后刷新(清空)输出缓冲区,这样就可显示内容之后换行。与 endl 类似,也可以使用 \n 来插入换行符,但 \n 不会刷新输出缓冲区。

第八行,return 0; 通常出现在程序的 main 函数的末尾,表示程序的正常结束,并向告诉操作系统。return 是一个关键字,用于从函数返回一个值。在 main 函数中,return 语句指定了程序的退出状态。返回值 0 表示程序的正常终止或成功执行。这是一种约定,表示程序没有错误地执行完所有操作。如果返回的是非零值,则通常表示程序遇到了某种错误或异常情况。不同的非零返回值可以用来表示不同类型的错误。

http://www.lryc.cn/news/290721.html

相关文章:

  • 扩散视觉反事实算法 DVC:对抗性鲁棒分类器 + 扩散模型,跨模态对比原始的 fundus 图 VS 生成的 OCT 图
  • C++(6) 继承
  • 【Servlet】Smart Tomcat插件简化Servlet开发流程及解决常见问题
  • 解决Qt连接不上mysql数据库
  • kubernetes-快速部署一套k8s集群
  • Windows Server 安装 Docker
  • 智能分析网关V4智慧机房:视频AI智能安全监管方案
  • 一些反序列化总结
  • 分披萨(100%用例)C卷(JavaPythonC++Node.jsC语言)
  • SQL字符串截取函数【简笔记】
  • 会话技术复习笔记
  • 我用Rust开发Rocketmq name server
  • 【Deep Dive: Al Webinar】开源人工智能中赋能、透明性和可重复性三者之间的关系...
  • 将Html页面转换为Wordpress页面
  • Next.js 学习笔记(七)——样式
  • 金线检测步骤
  • 电池-电量监测基础知识
  • 西瓜书学习笔记——层次聚类(公式推导+举例应用)
  • 深度视觉目标跟踪进展综述-论文笔记
  • 【数据结构:顺序表】
  • android tts播报破音解决方案汇总
  • 2024年新提出的算法:一种新的基于数学的优化算法——牛顿-拉夫森优化算法|Newton-Raphson-based optimizer,NRBO
  • 笔记 | Clickhouse 命令行连接及查询
  • 设计模式—行为型模式之责任链模式
  • 如何使用Python+Flask搭建本地Web站点并结合内网穿透公网访问?
  • 【C语言】【力扣】刷题小白的疑问
  • 【Python】03快速上手爬虫案例三:搞定药师帮
  • C++异步编程
  • dfs专题(记忆化搜索)P1141 01迷宫——洛谷(题解)
  • pip 安装出现报错 SSLError(SSLError(“bad handshake