700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > C++语言程序设计(郑莉)02 C++基本数据类型和表达式

C++语言程序设计(郑莉)02 C++基本数据类型和表达式

时间:2023-01-29 02:30:29

相关推荐

C++语言程序设计(郑莉)02 C++基本数据类型和表达式

字符集词法记号 关键字标识符:字母数字下划线构成,字母下划线开头文字????操作符分隔符空白基本数据类型 标准只规定相对大小顺序一般用int,通常具有最高的处理效率char并没有规定默认情况下是有符号的还是无符号的,char, signed char, unsigned char 是三种不同的数据类型每一种数据类型都包括了数据本身的属性以及对数据的操作,定义一个变量同时限定了对变量的操作常量 直接使用符号(文字)表示的值整型常量 十进制不能以0开头,八进制以0开头八进制和十六进制形式的整型常量一般用来表示无符号整数,前面不应带正负号后缀L表示长整型,后缀U表示无符号型实型常量 指数形式,整数部分和小数部分可以省略其一,但不能都省略,如.123E-1,12.E2都是正确的,但不能写成E-3这种形式默认double型字符常量 一般字符'a',不可显示字符\n\nnn八进制形式 \xnnn十六进制形式字符中的单引号要用转义序列表示字符串常量 字符串中的双引号要用转义序列表示末尾\0字符'a'和字符串"a"内存是不同的布尔常量符号常量 const声明时必须赋初值,之后不能被赋值变量 需要用名字标识的变量的声明和定义 声明类型和定义声明不一定引起内存分配,定义意味着给变量分配内存空间,变量名就是对内存单元的命名,多数情况下声明与定义同时进行变量地址的内存位置,与变量定义的位置直接相关没有字符串变量,字符串类存储字符串变量的存储类型 auto 存储类型:采用堆栈方式分配内存空间,属于暂时性存储,其存储空间可以被若干变量多次覆盖使用。reglster 存储类型:存放在通用寄存器中。extern 存储类型 z 在所有函数和程序段中都可引用。static 存储类型:在内存中是以固定地址存放的,在整个程序运行期间都有效。运算符与表达式 算术 %只能用于整型操作数,优先级与/相同i=1,i++表达式的结果为2,但是结果要被用来继续参与其他操作时情况不同赋值 表达式的值为等号左边对象被赋值后的值<<= >>= &= ^= |=逗号 表达式1,表达式2先求解1,再求解2,最终结果为表达式2的值逻辑 比较 优先级相同(较高) <(小于),<=(小于或等于) ,>(大于),>=(大于或等于),优先级相同(较低〉 == (等于),!=(不等于)逻辑 高 ——>低 ! (非) &&(与) ||(或)&&和||短路 运算效率第二个操作数的运算与否,可能会使某些值发生变化,例如 (a==b)||(++c==1)条件 唯一的三元运算符?表达式 l? 表达式 2: 表达式 3表达式 1 必须是 bool 类型,表达式 2 , 3 可以是任何类型,且类型可以不同。条件表达式的最终类型为 2 和 3 中较高的类型条件表达式的执行顺序为:先求解表达式 1 。若表达式 1 的值为 true时,则求解表达式2 ,表达式 2 的值为最终结果;若表达式 1 的值为 false ,则求解表达式 3 ,表达式 3 的值为最终结果。条件运算符优级高于赋值运算符,低于逻辑运算符。结合方向为自右向左。sizeof运算符 不对括号内的表达式本身求值位运算 对数据按二进制位进行操作,操作数必须是整数按位与& 将操作数中的若干位置0取操作数中的若干位置按位或| 将操作数中的若干位置1按位异或^ 将操作数中的若干指定位翻转,如果某位与0异或,结果是该位的原值,如果某位与1异或,结果与该位原来的值相反​​​​​​​按位取反~ ​​​​​​​单目运算符​​​​​​​​​​​​​​​​​​​​​移位 ​​​​​​​移位运算符左边的操作数是需要移位的数值,右边的操作数是左移或右移的位数。左移是按照指定的位数将一个数的二进制值向左移位。左移后,低位补 0,移出的高位舍弃。

右移是按照指定的位数将一个数的二进制值向右移位。右移后,移出的低位舍弃。

如果是无符号数则高位补 0; 如果是有符号数,则高位补符号位或补 0​​​​​​​运算符优先级与结合性

混合运算时数据类型的转换 隐含转换 算术运算和关系运算:低类型转换为高类型类型越高,范围越大,精度越高低——>高char short int unsigned long unsigned long float double逻辑运算全部转换成bool型赋值运算一律将右值转换为左值的类型显式转换 类型说明符(表达式) //C++风格的显示转换符号(类型说明符)表达式 //C风格的显示转换符号const cast< 类型说明符:> (表达式)dynamic cast< 类型说明符:> (表达式)reinterpret cast< 类型说明符:> (表达式)static cast< 类型说明符:> (表达式)显式转换可能是不安全的,高类型转换为低类型数据精度会受损转换时暂时的,一次性的语句语句 没有赋值语句和函数调用语句,赋值与函数调用通过表达式实现表达式可以作为另一个更复杂表达式的一部分,而表达式语句不能

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。