首页 > 编程语言 >深入理解 C++ 语法:从基础知识到高级应用

深入理解 C++ 语法:从基础知识到高级应用

时间:2024-03-22 23:22:05浏览次数:17  
标签:std cout 示例 int C++ 基础知识 语法 main

C++ 语法

让我们将以下代码分解以更好地理解它:

示例

#include <iostream>
using namespace std;

int main() {
  cout << "Hello World!";
  return 0;
}

示例解释

  • 第 1 行:#include <iostream> 是一个头文件库,它让我们可以使用输入和输出对象,比如 cout(在第 5 行使用)。头文件为 C++ 程序添加功能。
  • 第 2 行:using namespace std 表示我们可以使用标准库中的对象和变量名称。
  • 如果你不理解 #include <iostream>using namespace std 如何工作,不用担心。只需将其视为几乎总是出现在你的程序中的内容。
  • 第 3 行:空白行。C++ 忽略空白字符。但我们使用它来使代码更易读。
  • 第 4 行:C++ 程序中的另一个几乎总是出现的东西是 int main()。这被称为一个函数。其花括号 {} 内的任何代码都将被执行。
  • 第 5 行:cout(读作 "see-out")是一个对象,与插入运算符 << 一起用于输出/打印文本。在我们的示例中,它将输出 "Hello World!"。
    • 注意:每个 C++ 语句都以分号 ; 结束。
    • 注意:int main() 的主体也可以写成:int main() { cout << "Hello World! "; return 0; }。记住:编译器会忽略空格。但是,多行使代码更易读。
  • 第 6 行:return 0 结束了 main 函数。
  • 第 7 行:不要忘记添加闭合花括号 } 来实际结束 main 函数。

省略命名空间

你可能会看到一些 C++ 程序在没有标准命名空间库的情况下运行。可以省略 using namespace std 行,并用 std 关键字替换它,后跟 :: 运算符来使用一些对象:

示例

#include <iostream>

int main() {
  std::cout << "Hello World!";
  return 0;
}

是否包含标准命名空间库取决于你。

C++ 输出(打印文本)

cout 对象与 << 运算符一起用于输出值/打印文本:

示例

#include <iostream>
using namespace std;

int main() {
  cout << "Hello World!";
  return 0;
}

你可以添加任意多个 cout 对象。但是请注意,它不会在输出的末尾插入新行:

示例

#include <iostream>
using namespace std;

int main() {
  cout << "Hello World!";
  cout << "I am learning C++";
  return 0;
}

新行

要插入一个新行,你可以使用 \n 字符:

示例

#include <iostream>
using namespace std;

int main() {
  cout << "Hello World! \n";
  cout << "I am learning C++";
  return 0;
}

提示:连续两个 \n 字符会创建一个空白行:

示例

#include <iostream>
using namespace std;

int main() {
  cout << "Hello World! \n\n";
  cout << "I am learning C++";
  return 0;
}

另一种插入新行的方法是使用 endl 操纵符:

示例

#include <iostream>
using namespace std;

int main() {
  cout << "Hello World!" << endl;
  cout << "I am learning C++";
  return 0;
}

\nendl 都用于换行。然而,\n 最常用。

但是,\n 究竟是什么?

换行字符 (\n) 被称为转义序列,它强制光标将其位置更改为屏幕上下一行的开头。这将导致换行。

其他有效的转义序列示例包括:

转义序列 描述 示例
\t 创建一个水平制表符
\\ 插入一个反斜杠字符 ()
\" 插入双引号字符

C++ 注释

注释可用于解释 C++ 代码,并使其更易读。它还可以用于在测试替代代码时防止执行。注释可以是单行或多行。

单行注释

单行注释以两个正斜杠开始 (//)。

// 和行末之间的任何文本都将被编译器忽略(不会执行)。

此示例在代码行之前使用了单行注释:

示例

// This is a comment
cout << "Hello World!";

此示例在代码行末尾使用了单行注释:

示例

cout << "Hello World!"; // This is a comment

C++ 多行注释

多行注释以 /* 开始,以 */ 结束。

/**/ 之间的任何文本都将被编译器忽略:

示例

/* 以下代码将在屏幕上打印 Hello World!
并且这太棒了 */
cout << "Hello World!";

单行或多行注释?

你可以自己决定使用哪种。通常,我们用 // 来进行短注释,用 /* */ 来进行长注释。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

标签:std,cout,示例,int,C++,基础知识,语法,main
From: https://www.cnblogs.com/xiaowange/p/18090585

相关文章

  • 显卡基础知识及元器件原理分析
    显卡应该算是是目前最为火热的研发方向了,其中的明星公司当属英伟达。当地时间8月23日,英伟达发布截至7月30日的2024财年第二财季财报,营收和利润成倍增长,均超市场预期。财报显示,第二财季英伟达营收为135.07亿美元,同比增长101%,环比增长88%。美国通用会计准则(GAAP)下,净利润为6......
  • C++中const小结
    const修饰普通变量表示变量的值不能被改变。下面两条语句(第2行和第3行)表示的意思一致。inta;constintca=42;//intconstca=42;const修饰指针指向常量的指针不能改变其指对象的值。第5行代码是错误的。inta=42;constint*ip=&a;intconst*ipp=......
  • 时序分析:基础知识整理(三)差分转单端的约束等
    之后的都只有我个人能看,想看的请支持单刀大佬。主时钟约束主时钟约束,就是我们对主时钟(PrimaryClock)的时钟周期进行约束(告诉综合工具布局布线的标准),这个约束是我们用的最多的约束了,也是最重要的约束。主时钟必须与一个网表对象相连,该对象代表了所有时钟边沿的开始点,并且在时钟......
  • [c++/gcc] Centos 7.9升级 gcc 4.8.5 到 gcc11 [转]
    0序本文背景:因在centos7.9server上安装nodejs21.7.1,编译nodejs时,依赖了gnu17/gcc11。例如:遇到Qtrequiresc++11support、-std=gnu++17例如:编译器不支持c++17,就会提示:g++:error:unrecognizedcommandlineoption‘-std=c++17’例如:编译器不支持c++17,就会提示:g++:......
  • 【C++ 08】vector 顺序表的常见基本操作
    文章目录前言......
  • 【C++】string类模拟实现
    个人主页:zxctscl如有转载请先通知文章目录1.前言2.构造函数和析构函数3.遍历3.1下标+[]3.2迭代器4.Modifiers4.1`push_back`和`append`4.2+=4.3insert4.4erase4.5swap5.Capacity5.1resize5.2clear6.深浅拷贝6.1浅拷贝(值拷贝)6.2深拷贝7.String......
  • C++暴力指南
    关于暴力做法暴力,非常直白的就是直接硬做,不管他循环有多大,不管他数据量有多大。你要记住的一个事情就是,暴力只面向小数据,但是必定能得到正确解(前提当然是你没写错)甚至你需要进行对拍的时候你也得先写一个暴力出来才能方便对拍。但是也因此,为了尽可能的偷分,暴力里要做尽可能的比......
  • Markdown常用语法备忘手册
    数学公式/LaTeX语法矩阵先来一份示例$$\left[\begin{array}{r:c:l}a0&b1&c2\\\hlined&e&f\end{array}\right]$$说明:1.首尾的$$换成$可以将矩阵改成行内显示,即不单独换行;2.'\left['和'\right]'表示左右分别用'[]'包裹,也支持用'()�......
  • C++流媒体开源库Live555详细介绍
    C++流媒体开源库Live555详细介绍C语言资深大师  5人赞同了该文章1、Live555简介Live555是一个为流媒体提供解决方案的跨平台的C++开源项目,它使用了RTP/RTCP、RTSP、SIP开放标准协议,实现了标准流媒体传输。Live555实现了对多种音视频编码格式的音视频......
  • C++ 指针,指针引用,二级指针作为实参传入函数体,形参改变指向的问题
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、形参指向变化,实参指向不变二、指针引用传递改变实参指向三、二级指针**传递改变实参指向一、形参指向变化,实参指向不变前提了解:无论是值传递,指针传递,引用传递,形参和实参都是完全不同的......