C++ 基本语法
当我们考虑一个C ++程序时,它可以被定义为通过调用彼此的方法进行通信的对象集合。 现在让我们简要地看一下类,对象,方法和即时变量的含义。
Object - 对象具有状态和行为。 示例:狗有状态 - 颜色,名称,品种以及行为 - 摇摆,吠叫,吃东西。 对象是类的实例。
Class - 可以将类定义为描述其类型对象支持的行为/状态的模板/蓝图。
Methods - 方法基本上是一种行为。 一个类可以包含许多方法。 它是在编写逻辑,操纵数据并执行所有操作的方法中。
Instance Variables - 每个对象都有其唯一的实例变量集。 对象的状态由分配给这些实例变量的值创建。
C++程序结构 (C++ Program Structure)
让我们看一下打印Hello World这个词的简单代码。
#include <iostream>
using namespace std;
// main() is where program execution begins.
int main() {
cout << "Hello World"; // prints Hello World
return 0;
}
让我们看看上述计划的各个部分 -
C ++语言定义了几个标题,其中包含对程序必要或有用的信息。 对于此程序,需要标题《iostream》 。
using namespace std;的行using namespace std; 告诉编译器使用std命名空间。 命名空间是C ++的一个相对新近的补充。
下一行' // main() is where program execution begins. '是C ++中提供的单行注释。 单行注释以//开头,并在行尾停止。
int main()是程序执行开始的主要功能。
下一行cout 《《 "Hello World"; 导致消息“Hello World”显示在屏幕上。
下一行return 0; 终止main()函数并使其将值0返回给调用进程。
编译和执行C ++程序
让我们看看如何保存文件,编译和运行程序。 请按照以下步骤进行操作 -
打开文本编辑器并添加上面的代码。
将文件另存为:hello.cpp
打开命令提示符并转到保存文件的目录。
输入'g ++ hello.cpp'并按Enter键编译代码。 如果代码中没有错误,命令提示符将转到下一行并生成a.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++ Identifiers)
C ++标识符是用于标识变量,函数,类,模块或任何其他用户定义项的名称。 标识符以字母A到Z或a到z或下划线(_)开头,后跟零个或多个字母,下划线和数字(0到9)。
C ++不允许标识符中的标点符号,如@,$和%。 C ++是一种区分大小写的编程语言。 因此, Manpower和manpower是C ++中的两个不同的标识符。
以下是可接受标识符的一些示例 -
mohd zara abc move_name a_123
myname50 _temp j a23b9 retVal
C++关键字 (C++ Keywords)
以下列表显示了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 |
Trigraphs (Trigraphs)
一些字符具有替代表示,称为三字符序列。 三字母是一个三字符序列,表示单个字符,序列始终以两个问号开头。
Trigraph在它们出现的任何地方都会被扩展,包括字符串文字和字符文字,注释和预处理器指令。
以下是最常用的三字符序列 -
三字母组合 | 替换 |
---|---|
??= | # |
??/ | \ |
??' | ^ |
??( | [ |
??) | ] |
??! | | |
??< | { |
??> | } |
??- | ~ |
所有编译器都不支持三字母组合,因为它们的混乱性质,不建议使用它们。
C ++中的空白
只包含空格(可能带有注释)的行称为空行,C ++编译器完全忽略它。
空格是C ++中用于描述空格,制表符,换行符和注释的术语。 空格将语句的一部分与另一部分分开,并使编译器能够识别语句中的一个元素(如int)的结束位置以及下一个元素的开始位置。
声明1
int age;
在上面的语句中,int和age之间必须至少有一个空格字符(通常是空格),以便编译器能够区分它们。
声明2
fruit = apples + oranges; // Get the total fruit
在上面的语句2中,在fruit和=之间,或者在=和apples之间不需要空白字符,尽管如果您希望出于可读性目的,可以自由地包含一些空格字符。