news 2026/4/27 0:36:28

C++程序简单示例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C++程序简单示例

前言:

很多小伙伴反应想要用C++LeetCode,但是对于C++语法不熟悉,对于很多算法和数据结构也不够了解。这就导致了刷题的时候需要四处查询资料,非常的麻烦。

我们先来看一段C++的示例代码:

1

2

3

4

5

6

7

// my first cpp file

#include <iostream>

intmain() {

usingnamespacestd;

cout <<"hellworld"<< endl;

return0;

}

这段代码虽然很短,但几个重要的要素都包含了,如果只是用来刷题,会发现基本上也只会用到这些语法。

我们一行一行来看。

1、注释

首先是第一行,第一行表示的C++当中的注释。C语言当中的/**/的多行注释方法同样支持,但为了避免潜在的问题,尽量使用C++类型的注释。

2、include

第二行是预编译指令include,这里的预编译指令是一个专业名词,表示在编译之前预先执行的指令。C++当中的预编译指令有好几种,除了include之外还有defineifdefundef等等,我们后面遇到了再说。

include这个指令会引入一个源代码文件,后面跟着的是一个包含文件名,也叫头文件名。C语言中的头文件以.h结尾,而C++当中兼容了C语言的头文件,只不过将其重新命名,去掉了末尾的.h,而换成了c开头。比如math.h文件替换成了cmath

在这行代码当中我们include的头文件叫做iostreamiostream为C++的标准输入输出库,用来在终端读入或者打印文本信息。iostream可以拆开理解成iostream,其中io表示inputoutput即输入输出,stream表示流,即使用流形式进行io。

3、main函数

main函数是C++程序的入口函数,C++标准当中定义的main函数类型是int。返回0表示程序正常退出,所以一般我们要在main函数的最后写上return 0

C++的main函数通常有两种写法,一种是参数留空,一种是定义参数数量以及参数值。

1

2

intmain() {}

intmain(intargc,char* argv[]) {}

关于main函数的传参方法,以及参数使用方法同样会在之后介绍,初学者随便使用哪一种都是一样的。

注意,有些编译器比如vc6.0等没有严格遵循gcc规范,导致支持void类型的main函数。建议放弃此类不规范的编译器,以免代码无法迁移,并且养成不好的编码习惯。

4、命名空间

命名空间是C++当中的特性,用来解决大型项目名称冲突的问题。

有可能多个程序员同时开发了getValue函数,但当我们编译运行的时候,编译器无法知道我们究竟调用的是哪一个getValue,所以需要使用命名空间进行区分。比如A程序员将getValue放入了名为A的命名空间当中,那么当我们调用getValue的时候就需要写成A::getValue,B程序员将它放入了名为B的命名空间中,同样调用的时候写成B::getValue

然而常用的许多函数、变量都明明在std的命名空间当中,这就意味着当我们使用这类内容的时候,都需要在前面加上std::,比如标准输出的cout命令,需要写成std::cout

这会导致编码变得繁琐,所以C++提供了using namespace的功能,即告诉编译器当前使用的命名空间名称,这样我们在调用该命名空间的内容时,可以省略前缀。

除了using namespace之外我们也可以单独使用using命令,例如:

1

2

usingstd::cout;

usingstd::cin;

5、cout

标准输出工具,可以将字符串输出在终端中。

cout本身是一个预定义的对象,它知道如何显示字符串、数字和单个字符。<<符号表示将字符串发送给cout,由cout输出在屏幕当中。<<符号表示了信息流动的路径,<<符号可以多个叠加连接,

比如:

1

cout <<"hello"<<"world"

endl表示当前输出行的结束,cout遇到endl时会重启一行,否则则会接在同一行后面继续输出。

除了使用endl之外,我们也可以使用换行符来达到同样的效果,如:

1

cout <<"hello"<<"world\n";

C++ Primer当中建议在输出由内容的字符串时使用换行符,而非endl,其他情况下使用endl,而非换行符。这两者绝大多数情况下是等价的,在一些特殊情况下可能会构成差异。

endl确保程序继续运行前刷新输出,而使用"\n"则意味着有时候需要在输入信息之后才会出现提示。当然这不是重点,我们遇到的概率也非常小,如果实在搞不清楚也不用纠结,统一使用endl也行。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/27 0:35:20

AI日志分析系统:多代理自修正RAG架构解析与实践

1. 日志分析系统的现状与挑战现代软件系统产生的日志数据正以惊人的速度增长。根据2023年DevOps状态报告&#xff0c;大型互联网公司每天产生的日志量普遍超过1TB&#xff0c;而传统金融系统的日志量也达到了数百GB级别。这些日志包含了系统运行状态、错误信息、性能指标等关键…

作者头像 李华
网站建设 2026/4/27 0:32:29

5分钟掌握Mermaid Live Editor:免费在线图表制作终极指南

5分钟掌握Mermaid Live Editor&#xff1a;免费在线图表制作终极指南 【免费下载链接】mermaid-live-editor Location has moved to https://github.com/mermaid-js/mermaid-live-editor 项目地址: https://gitcode.com/gh_mirrors/mer/mermaid-live-editor Mermaid Liv…

作者头像 李华
网站建设 2026/4/27 0:16:27

韩国大学研究团队找到了AI安全防护的“手术刀“

这项由韩国大学&#xff08;Korea University&#xff09;与AIGEN Sciences联合开展的研究&#xff0c;发表于2026年ICLR&#xff08;国际学习表征会议&#xff09;会议论文集&#xff0c;论文编号为arXiv:2509.25843v2&#xff0c;于2026年4月14日更新。你有没有想过&#xff…

作者头像 李华
网站建设 2026/4/27 0:10:52

摩尔线程发布一季报:营收7.38亿元,已有45万开发者

4月26日&#xff0c;国产GPU龙头摩尔线程&#xff08;688795.SH&#xff09;披露了2025年报及2026年一季报。根据公告&#xff0c;摩尔线程2025年实现营收15.05亿元&#xff0c;同比增长243.37%&#xff1b;毛利总额达到9.87亿元&#xff0c;较上年同期增长218.43%。2026年第一…

作者头像 李华
网站建设 2026/4/27 0:09:30

Windows Cleaner终极指南:如何彻底解决C盘爆红和系统卡顿问题

Windows Cleaner终极指南&#xff1a;如何彻底解决C盘爆红和系统卡顿问题 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服&#xff01; 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 你是否曾经面对电脑右下角弹出的红色警告…

作者头像 李华