C++零基础——C++的词法单位

by LauCyun May 06,2013 13:04:03 4,715 views

介绍C++的字符集、关键字、标识符及标点符号。

 

1、C++的字符集

  • ASCII码字符集是计算机中的常用字符集。它包括英文字母及阿拉伯数字等128个字符,存储一个ASCII码占用一个字节单元。
  • 由于汉字处理的需要,又出现了汉字国标码等对应于不同语言的字符集。国标码的存储占用两个字节单元。
  • 为了对各类字符进行统一编码,Unicode字符集应运而生。它包括了世界上多种语言的基本字符,共有65536个字符。 ASCII码字符集国标码字符集都是它的子集。Unicode字符集对所有字符进行统一的双字节编码。

C++语言使用下列基本字符来构成词法单位:

26个小写字母 abcdefghijklmnopqrstuvwxyz
26个大写字母 ABCDEFGHIJKLMNOPQRSTUVWXYZ
10个阿拉伯数字 0 1 2 3 4 5 6 7 8 9
其他符号  + - * / = , . _ : ; ? \ " ' ~ | ! # % & () [] {} ^ < > 空格

 

2、C++关 键 字

关键字(keyword)又称保留字,是系统定义的具有特定含义的英文单词,不能另作它用。C++区分大小写,关键字全部由小写字母组成。标准C++(ISO14882)定义了74个关键字,具体的C++编译器还会做一些增删。

常用关键字及分类见下表:

数据类型说明符与修饰符 bool、char、wchar_t、class、const、double、enum、float、int、long、short、signed、struct、union、unsigned、void、volatile
存储类型说明符 auto、extern、inline、register、static
访问说明符 friend、private、protected、public
其它说明符 asm、operator、template、this、typedef、virtual
语句与标号 break、case、catch、continue、default、do、else、for、goto、if、return、switch、throw、try、while
运算符及逻辑值 delete、false、new、sizeof、true

VC++中还有一些专用的关键字,它们都以双下划线开头:

_ _asm、_ _based、_ _cdecl、_ _emit、_ _export、_ _far、_ _fastcall、
_ _fortran、_ _huge、_ _interrupt、_ _loadds、_multipile_inheritance、
_ _near、_ _pascal、_ _saveregs、_ _segment、_ _signal_inheritance、
_ _self、_ _stdcall、_ _virtual、_ _inheritance

除以上之外的一些关键字本书不作介绍,可查阅相关手册。

 

3、C++标识符

标识符(Identifier,ID)是程序员定义的英文单词,用来给变量、常量、数据类型、函数等命名。合法标识符由字母或下划线开始,由字母、数字、下划线组成,其有效长度为1-31个字符,长度超过31个字符者只识别前31个字符,VC++标识符长度为1-247个字符。

建议使用有一定含义的英文单词或拼音序列作标识符,以提高可读性;另外,尽量不用下划线或双下划线打头,以免与系统定义的关键字冲突。

例如:

判断下面哪些是合法的标识符(非 标红 部分之外均为合法的标示符)

94Salary  $amount f3.5 Num_of_Student
Salary 94 amount MyFile      void
Salary94      

 

4、标点符号

c++中的标点符号包括 #、 (、 )、 {、 }、 ,、 :、 ;、 " 、 '等。标点符号的作用:

  • 有一定的语法意义。例如字符和字符串常量分别用 ' ' 和 " "引起来。
  • 对语法符号起分隔作用。例如 ;等。

Tags