二进制B、八进制O、十进制D、F十六进制H
2.1词法符号
一,字符集,c++的字符集(ACSII码字符集)包括26个小写字母,26个大写字母,10个数字,其他符号。C++的字符集所构成的此法单位有5中:标识符,关键字,标点符号(分隔符),常亮和运算符。
二,标识符,用来标识变量、符号常量、函数、和数据类型的有效字符序列称为标识符!简单地说,标识符就是一个名字,用以区分不同的变量、符号常量、数组和函数等。
标识符使用规则:
1, 标识符只能有字母、数字和下划线组成
2, 标识符的第一个字符必须是字幕或下划线,不能用数字开头。
3, 其中字母是区分大小写的。大写意消协完全是两个不同的标识符。
4, 标识符的长度理论上可以任意长。但不同编译器会有限制为保证可读性,可使用31个字符或更短的标识符。
5, 标识符不能分行书写。
6, 为提纲程序的可读性,在命名变量名时,最好做到简洁且“见名知意”
asm(关键字) do inline short typeid audo double int signed typename bool dynamic_case long sizeof union break else mutable static unsigned case enum namespace edef using catch explicit new struct virtual char extern operator switch viod class false private template volatile const float
const_case for public thow while continue friend register true default goto try delete if return typedef reinterpret_cast wchar_t(还不太清楚是什么)
基本数据类型
数据类型 | 基本类型 | 整型(int) | |
字符型(char) | |||
实型(float、double) | 单精度型 | ||
双精度型 | |||
长双精度型 | |||
布尔型 | |||
枚举型 | |||
构造类型 | 数组 | ||
指针 | |||
共用体 | |||
结构体(struct) | |||
类(class) | |||
空类型 | |||
整型 | 整型(int,+-2^31) |
短整型(+-short int,2^15) | |
长整型(+-long int,2^31) | |
无符号整型(unsigned int,0-2^31) | |
无符号短整型(unsigned short int,0-2^16) | |
无符号长整型(unsigned long int,0-2^32) | |
字符型(char,+-2^7) | |
单精度浮点型(float,+-3.4*10^38) | |
双精度浮点型(double,+-1.7*10^308) | |
长双精度(long double,+-1.7*10^308) | |
布尔型(bool,true或false) | |
数据类型的作用:
1, 他指出了该类型数据在内存中如何储存,即占用多大的存储空间,同时也确定了该类型数据的取值范围。
2, 他指出了该类型的数据所能进行的运算。
一, 字符型用来处理字符数据存储的是该字符的ASCII码,占用1一个字节。
二, 布尔型用于描述逻辑量,其取值只有true(逻辑真)和false(逻辑假)两个值。
常量与变量
数据是以常量或变量的形式来描述的。
常量:可以直接写在程序中的数据,在程序运行过程中其值始终保持不变。有两种形式:一种是以字面值形式直接出现在程序中;另一种是用标识符的形式表示,称为符号常量。
常量包括整型常量、实型常量、字符型常量和字符串常量。
整型常量:不含小数点的数。可用十进制、八进制和十六进制。
1, 十进制整型常量:与日常生活中的书写方式相同,以负号、0-9数字组成。
2, 八进制整型常量以数字0开头有数字0-7组成。
3, 十六进制整型常量以0X开头,有数字0-9、a-f(或A-F)组成。
4, 长整型常量可在末尾加上L(或l)
以上介绍的整型常量的数据类型默认为基本整形int。
实型常量
实型常量又称浮点型常量,其有两种表示形式,即:小数形式和指数形式。
小数形式:由负号、数字和小数点组成其中小数点必不可少
指数形式:也称科学表示法,他是有尾数部分、阶码标志(E或e,表示*10)和指数部分组成的实型常量。尾数和指数部分都可以带有符号.(需要注意的是,E或e后必须是整数)。
字符常量
C++中有两种字符常量,即一般字符常量和转义字符常量。
一般字符常量:用单引号引起来的单个字符,如‘a’,在其内保存的是他的ASCII码值占据一个字节。
转义字符
除了使用字符常量外,c++中还经常使用转义字符表示一些特殊字符。
特征:以一个反斜杠\开头的特定字符序列字符序列,用于表示一些不可显示或无法从键盘输入的控制字符如下表:
字符形式 | ACSII码值 | 功能 |
\0 | 0x00 | NULL |
\a | 0x07 字符串按照反斜杠转成数组 | 响铃 |
\b | 0x08 | 退格(backspace键) |
\t | 0x09 | 水平制表(Tab键) |
\n | 0x0a | 回撤换行 |
\v | 0x0b | 垂直制表 |
\f | 0x0c | 走纸换页 |
\r | 0x0d | 回车(不换行) |
\\ | 0x5c | 反斜杠 |
\’ | 0x27 | 单引号 |
\” | 0x22 | 双引号 |
\? | 0x3f | 问好 |
\ddd | 0ddd | 1-3位八进制数所代表的字符 |
\xhh | 0xhh | 1-2位十六进制数所代表的字符 |
表中最后两行是使用转义字符的形式表示任意一个字符,此时反斜杠后面是八进制或十六进制数值,该值为所要表示的字符的ACSII码值。由于字符型常量占用1个字节,所以转义字符使用八进制数表示时,最多是三位数,范围是\000-\377;使用十六进制数表示时必须使用x或X开头表示范围是\x00-\xff。
字符串常量
用一对双引号引起来的字符称为字符串常量。字符串常量与字符常量不同,字符串常量在内存中是按顺序逐个存储传中每个字符的ASCII码,并在最后自动加上一个’\0’字符,该字符称为字符串的结束标志,其ASCII码值为0.
字符常量是用来组成字符串常量的基本单位,几个字符常量,可以组成一个字符串常量。但是字符串常量比组成原有字符常量多一个单位,即’\0’值为零。
符号常量:
在程序中可以用一个符号来代替常量。
定义符号常量的形式为:const 数据类型 符号常量 = 常量表达式。
Const是定义符号常量的关键字,数据类型用来指定符号敞亮的类型,符号常量名为标识符,其命题要求符合标识符的命名规则。常量表达式的值即符号常量的值。
符号常量的优点:(1)增强了长须的可读性,便于理解常亮的含义,(2)增强程序的可维护性。首先时刻避免重新输入,其次当需要对符号常量进行修改时 ,只需要在定义出进行修改即可,从而避免了在程序中多处查修改的麻烦,同时也避免了因一楼修改而导致的程序运行错误。
注意:(1)在程序中不允许修改符号常量的值,因此在符号常量定义是就必须初始化,即在定义时为其赋值。
(2)在符号常量的定义中复制号右侧的“常量表达式”中不能含有变量或者函数。
变量:
与常亮不同,变量的值在程序的运行过程中是可以变化的。在程序中,变量实际代表的是计算机内存中的一块存储空间,存储空间的名称就是变量名,其中存储的内容就是变量的值,存储空间的具体大小则是由变量的类型决定的。在程序适用变量时,系统会通过变量名到
对应的存储空间,从而访问其中的数据。
变量的值是可以变化的,当把一个新的值存放到变量中时,变量原有的值就会被覆盖点儿不复存在,基变量在某一时刻只能保留一个值。
C++重在实用变量之前,必须先对变量进行定义,及定义其类型和名字,对于变量的定义,在程序编译时编译器会根据变量的数据类型为变量分配一块存储空间,用于存储该变量的值。
其一般形式为:数据类型 变量名表。
(1) 变量名是用户定义的边师傅,因此为变量命名是要符合标识符的命名规则。
(2) 标识符中可以包含很多变量,彼此之间要用逗号隔开。
(3) 数据类型可为基本数据类型,也可以是构造类型常用的基本数据类型为char(字符型)、int(正数)、long(长整型)、float(浮点型)和double(双精度型)
选择变量类型时应注意:数据的类型、数据的取值范围、数据可以参与的运算。
变量的定义可以出现在程序中的任何位置,只要在使用该变量之前进行定义即可,而且,同一变量只能定义一次,不能重复定义。
变量的赋值与初始化:
变量定义后,就有了对应的存储空间,但此时该储存空间内的值是一个随机值,也就是说此时变量的值是不确定的或不是程序所需要的,。因此在使用变量前,用纤维变量赋值。为变量赋值,就是将一个新值或确定的值存入变量对应的存储空间,此时原来的值就会被覆盖。
赋值运算符与赋值表达式
赋值运算符(=)用于为变量赋值,赋值运算符与其两侧的操作数组成的表达式称为赋值表达式称为赋值表达式。
赋值表达式形式:变量名=表达式。
赋值表达式的计算过程时先计算赋值运算符号右边表达式的值,然后将其赋值给左边的变量。赋值表达式本身也有值,其值及为赋值运算符左边的变量的值,其类型为左边变量的类型。
注意:赋值运算符左边必须是变量名,而不能是常量或表达式等。赋值运算有方向性,即只能将赋值运算符右边的数据富裕赋值运算符左边的变量。若赋值运算符右边的表达式的值的类型与赋值运算符左边的变量的类型不一致,则要将表达式的值的类型转换为变量的类型,然后再进行赋值。注意赋值运算符与数学上的等于号的含义完全不同。在一个表达式中可以有多个赋值运算符,此时的运算顺序是从又想做的方向进行的。
变量的初始化:在定义变量的同时为变量赋初值,成为变量的初始化。
在使用变量的值进行计算时,必须保证变量有确定的值。对于已经定义而没有被赋值的变量,其值为不确定的随机值,此时读其值进行计算会导致错误的程序运算结果,因此在定义变量后应立即为变量赋值或在定义是对变量进行初始化。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论