📜  C++基本语法

📅  最后修改于: 2020-12-17 05:00:38             🧑  作者: Mango


当我们考虑C++程序时,可以将其定义为通过调用彼此的方法进行通信的对象的集合。现在让我们简要地研究一下类,对象,方法和即时变量的含义。

  • 对象-对象具有状态和行为。例如:一条狗有状态-颜色,名字,品种和行为-摇摆,吠叫,进食。对象是类的实例。

  • -类可以定义为模板/蓝图,用于描述其类型对象支持的行为/状态。

  • 方法-方法基本上是一种行为。一个类可以包含许多方法。在编写逻辑,处理数据和执行所有操作的方法中。

  • 实例变量-每个对象都有其唯一的实例变量集。对象的状态由分配给这些实例变量的值创建。

C++程序结构

让我们看一个简单的代码,该代码将打印单词Hello World

#include 
using namespace std;

// main() is where program execution begins.
int main() {
   cout << "Hello World"; // prints Hello World
   return 0;
}

让我们看一下上述程序的各个部分-

  • C++语言定义了几个标头,其中包含对程序必要或有用的信息。对于此程序,需要标题

  • 该行使用名称空间std;告诉编译器使用std名称空间。命名空间是C++中相对较新的功能。

  • 下一行’ // main()是程序执行开始的地方。 ‘是C++中可用的单行注释。单行注释以//开头,并在该行的结尾处停止。

  • int main()行是开始执行程序的主要函数。

  • 下一行cout <<“ Hello World”;使消息“ Hello World”显示在屏幕上。

  • 下一行返回0;终止main()函数并使它返回值0到调用进程。

编译并执行C++程序

让我们看一下如何保存文件,编译和运行程序。请按照下面给出的步骤-

  • 打开一个文本编辑器并添加上面的代码。

  • 将文件另存为:hello.cpp

  • 打开命令提示符,然后转到保存文件的目录。

  • 输入“ g ++ hello.cpp”,然后按Enter编译代码。如果代码中没有错误,则命令提示符将带您进入下一行,并将生成一个.out可执行文件。

  • 现在,键入“ a.out”以运行程序。

  • 您将能够在窗口上看到“ Hello World”。

$ g++ hello.cpp
$ ./a.out
Hello World

确保g ++在您的路径中,并且正在包含文件hello.cpp的目录中运行它。

您可以使用makefile编译C / C++程序。有关更多详细信息,您可以查看我们的“ Makefile教程”

C++中的分号和块

在C++中,分号是语句终止符。也就是说,每个单独的语句必须以分号结尾。它指示一个逻辑实体的结尾。

例如,以下是三个不同的语句-

x = y;
y = y + 1;
add(x, y);

块是一组逻辑连接的语句,由开括号和闭括号包围。例如-

{
   cout << "Hello World"; // prints Hello World
   return 0;
}

C++无法将行尾识别为终止符。因此,将语句放在一行中都没有关系。例如-

x = y;
y = y + 1;
add(x, y);

是相同的

x = y; y = y + 1; add(x, y);

C++标识符

C++标识符是用于标识变量,函数,类,模块或任何其他用户定义的项的名称。标识符以字母A到Z或a到z或下划线(_)开头,后跟零个或多个字母,下划线和数字(0到9)。

C++不允许标点字符如@,$,和标识符%以内。 C++是区分大小写的编程语言。因此,人力人力是C++中的两个不同的标识符。

这是可接受的标识符的一些示例-

mohd       zara    abc   move_name  a_123
myname50   _temp   j     a23b9      retVal

C++关键字

以下列表显示了C++中的保留字。这些保留字不得用作常量或变量或任何其他标识符名称。

asm else new this
auto enum operator throw
bool explicit private true
break export protected try
case extern public typedef
catch false register typeid
char float reinterpret_cast typename
class for return union
const friend short unsigned
const_cast goto signed using
continue if sizeof virtual
default inline static void
delete int static_cast volatile
do long struct wchar_t
double mutable switch while
dynamic_cast namespace template  

三部曲

一些字符具有另一种表示形式,称为三字母序列。三字组合是一个由三个字符组成的序列,表示一个字符,该序列始终以两个问号开头。

Trigraph会扩展到它们出现的任何位置,包括在字符串字面量和字符字面量,在注释中以及在预处理程序指令中。

以下是最常用的三字母组合序列-

Trigraph Replacement
??= #
??/ \
??’ ^
??( [
??) ]
??! |
??< {
??> }
??- ~

所有的编译器都不支持三字母组合,并且由于其混乱的性质,不建议使用它们。

C++中的空白

仅包含空格(可能带有注释)的行称为空白行,而C++编译器完全忽略它。

空白是在C++中,用于描述空格,制表符,字符和注释术语。空格将语句的一部分与另一部分分开,并使编译器能够识别语句中一个元素(例如int)在何处结束以及下一个元素在何处开始。

陈述1

int age;

在上面的语句中,int和age之间必须至少有一个空格字符(通常为空格),以便编译器能够区分它们。

陈述2

fruit = apples + oranges;   // Get the total fruit

在上面的语句2中,在水果和=之间,或在=和苹果之间,不需要空格字符,尽管出于可读性考虑,您可以自由地添加一些字符。