C++ 是一种功能强大且灵活的编程语言,它的语法建立在C语言的基础上,并引入了面向对象的特性。C++ 的语法相对复杂,但掌握了基础语法后,就可以编写出功能强大的程序。在学习过程中,多动手实践,不断练习,才能更好地掌握C++。本文主要介绍C++代码编写相关的语法规则,包括执行代码的方法,C++代码的格式命名,和C++基本语法,以及相关示例代码。

1、示例C++ 程序代码

下面是一个简单的代码,该代码将打印输出Hello World。

#include <iostream>
using namespace std;
int main() {
  cout << "Hello World!";
  return 0;
}

示例说明

1)程序的第一行#include <iostream>是预处理器指令,告诉 C++ 编译器在实际编译之前要包含iostream 文件。

2)using namespace std表示我们可以使用标准库中对象和变量的名称。

3)下一行 int main() 是主函数,程序从这里开始执行。

4)下一行 /*...*/ 将会被编译器忽略,这里放置程序的注释内容。它们被称为程序的注释。

5)下一行cout(发音为"see-out")是一个与插入操作符(<<)一起使用的对象,用于输出/打印文本。在我们的例子中,它将输出"Hello World"。

6)下一行 return 0; 终止 main() 函数,并返回值 0

2、分号;

在 C/C++ 程序中,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束。

例如,下面是两个不同的语句:

cout << "Hello World!";

3、标识符

C/C++ 标识符是用来标识变量、函数,或任何其他用户自定义项目的名称。一个标识符以字母 A-Za-z 或下划线 _开头,后跟零个或多个字母、下划线和数字(0-9)。

C/C++ 标识符内不允许出现标点字符,比如@$%。C 是区分大小写的编程语言。例如,Cjavapycjavapy 是两个不同的标识符。

4、关键字

下表中是 C++ 中的保留字。这些保留字不能作为常量名、变量名或其他标识符名称。

alignas

decltype

namespace

struct

alignof

default

new

switch

and

delete

noexcept

template

and_eq

do

not

this

asm

double

not_eq

thread_local

auto

dynamic_cast

nullptr

throw

bitand

else

operator

true

bitor

enum

or

try

bool

explicit

or_eq

typedef

break

export

private

typeid

case

extern

protected

typename

catch

false

public

union

char

float

register

unsigned

char16_t

for

reinterpret_cast

using

char32_t

friend

return

virtual

class

goto

short

void

compl

if

signed

volatile

const

inline

sizeof

wchar_t

constexpr

int

static

while

const_cast

long

static_assert

xor

continue

mutable

static_cast

xor_eq

5、C和C++

 C++是C的超集,也可以说C是C++的子集,因为C先出现。按常理说,C++编译器能够编译任何C程序,但是C和C++还是有一些小差别。

例如,C++增加了C不具有的关键字。这些关键字能作为函数和变量的标识符在C程序中使用,尽管C++包含了所有的C,但显然没有任何C++编译器能编译这样的C程序。

C程序员可以省略函数原型,而C++不可以,一个不带参数的C函数原型必须把void写出来。而C++可以使用空参数列表。

C++中newdelete是对内存分配的运算符,取代了C中的mallocfree

标准C++中的字符串类取代了C标准C函数库头文件中的字符数组处理函数(C中没有字符串类型)。

C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。

C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()longjmp()函数。

C++中还增加了bool型变量和wchar_t型变量。

推荐文档