C++基本数据类型和表达式.ppt_第1页
C++基本数据类型和表达式.ppt_第2页
C++基本数据类型和表达式.ppt_第3页
C++基本数据类型和表达式.ppt_第4页
C++基本数据类型和表达式.ppt_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 第二章基本数据类型和表达式 2 1c 的基本数据类型1 c 的数据类型 2 c 的数据类型 C 基本数据类型 整型int字符型char实型 结构struct联合union枚举enum类class数组type 指针type 空类型void 类型修饰符Shortlongsignedunsigned 4 第二章基本数据类型和表达式 2 基本数据类型修饰符long 长型符 short 短型符 signed 有符号型 unsigned 无符号型 3 用类型修饰符修饰后的基本数据类型 5 3 用类型修饰符修饰后的基本数据类型 字符型 说明符char character 占用内存1个字节 前面可加signed或unsigned 可以其ASCII码值参与运算 6 修饰后的基本数据类型 7 修饰后的基本数据类型 整型 说明符int integer 占用4字节 32位微处理机 前面可加short 占2字节 或long 占4字节 前也可signed或unsigned修饰 8 修饰后的基本数据类型 9 修饰后的基本数据类型 10 修饰后的基本数据类型 实型单精度实型双精度实型长双精度实型 说明符float 占用内存4个字节 说明符double 占用内存8个字节 说明符longdouble 占用内存10个字节 12 修饰后的基本数据类型 13 第二章基本数据类型和表达式 2 2整型数据1 整型数据的基本情况 见表2 1 2 操作符sizeof 数据类型 可测定某数据类型所占字节长度 例如 cout sizeofintis sizeof int endl 输出为 sizeofintis2 14 第二章基本数据类型和表达式 3 整型常量 整型常数 三种表示法 1 10进制常数 有正负 123 46 0 2 8进制常数 无符号 0开头的整数 如0123 3 16进制常数 无符号 0X或0 x开头的整数 如0 x123 0X23 3 整型常量十进制整数 非0开头123 756八进制整数 以0开头0123 十六进制整数 以0 x或0X开头 表示长整型常量可加后缀L或l 16 第二章基本数据类型和表达式 4 整形变量的定义和初始化变量命名 字母或下划线开头的字母 数字 下划线序列 不能为保留字 c 区分大小写 变量命名常用方法常用方法 mycar my car 17 第二章基本数据类型和表达式 整形变量定义inti j k unsignedintmyAge myWeight longarea width 整形变量赋值和初始化赋值 unsignedshortwidth width 5 为赋值号 18 第二章基本数据类型和表达式 初始化 unsignedshortwidth 5 longwidth 7 length 7 doublearea radius 23 19 第二章2 3字符型数据 1 字符型数据的基本情况字符常量 Charaterconstants 由单引号括起的字符 称为字符常量 如 a 9 转义字符表示控制字符或具有特定用途的字符 在内存中 字符数据以ASCII码存储 inta b charc 97 cout a endl 输出 98cout c endl 输出 a 20 第二章基本数据类型和表达式 2 字符型常量的表示 1 常规字符 单引号括起的一个字符 如 a x 等 2 转义字符 以 开头的字符序列 如 n b 等 3 ddd d为8进制数 表示范围为 000 377 十进制数为0 255 21 22 第二章基本数据类型和表达式 4 xhh h为16进制数 表示范围为 x00 xff 十进制数为0 255 5 单引号内 后跟上述情况以外的其它字符 表示该字符本身 如 d 即是 d 注 单引号 双引号 反斜杠这三个字符只能用下述方法表示 单引号用 双引号用 反斜杠用 23 第二章基本数据类型和表达式 6 字符串常量 用双引号括起来的字符序列 以 0 作为结束标志 该字符占有一字节的存储空间 但并不计入字符串的长度 如 C string 其存储格式为 其中字符串的长度为9 字符串常量 StringLiterals 由一对双引号括起的字符序列称为字符串常量 Howdoyoudo china 字符串常量以 0 结束 可用续行符 对字符串续行区分空字符 ASCII为0 与空格字符 ASCII为32 25 第二章基本数据类型和表达式 3 字符型变量的定义和初始化定义 charc1 初始化 charc2 A 26 字符型数据在外部表示字符 在内存单元中存入的并不是该字符本身 而是该字符的ASCII码 整数值 如 字符 A ASCII码为65字符 a ASCII码为97表达式求值过程中字符被转成与其代码等值的整数 进行计算 字符数据也可以进行加减乘除 如 b a A 98 97 65 66 B 4 字符型和整形的关系 27 第二章基本数据类型和表达式 故只要范围合理 字符数据与整型数据可以互相赋值 如 charch1 a ch2 B 也可为charch1 97 ch2 66 28 第二章基本数据类型和表达式 2 4枚举类型数据1 枚举类型数据的基本情况2 枚举类型的定义例如 enumweekday Sun Mon Tue Wed Thu Fri Sat 29 第二章基本数据类型和表达式 3 枚举变量的定义例如 weekdayw1 w4 4 枚举变量的初始化例如 weekdayw1 Mon 30 第二章基本数据类型和表达式 5 枚举型数据与整型数据之间的关系枚举中的符号与整数有一一对应关系例如 enumweekday Sun Mon Tue Wed Thu Fri Sat 0123456 31 第二章基本数据类型和表达式 可以用 为一个符号规定任意整数 该符号增1为下一个符号的默认整数 例如 enumsomdigits one 1 two five 5 six seven 125672 5实型数据1 实型数据的基本情况 32 第二章基本数据类型和表达式 2 实型常量 实型常数 二种表示法 1 定点数形式 必须有小数点 如0 123 234 0 0 2 指数形式 E或e前必有数字 后必为整数 如123e5 12 3e5e3 不对 2 5e2 5 不对 33 说明 默认实型常数为double型 后加F或f表float型 后加l或L表longdouble型 例如 3 23 3 23f 3 23L3 23e 33 23e 3F3 23e 3l 第二章基本数据类型和表达式 实型常量定点数形式如15 01指数形式如3 5E7或3 5e7 E或e前必须有数值 后面指数必须为整数 实型常量分为单精度 F或f标识 双精度 默认 长双精度 L或l标识 endl endline 35 3 实型变量的定义doublea b floatxyz1 xyz23 4 实型变量的初始化doublea 3 16 n 9 floatxyx1 3 23e 3f 第二章基本数据类型和表达式 36 第二章基本数据类型和表达式 2 6常量 constant 定义 1 常量定义时必须初始化 constfloatpi 3 1415926 constfloatg 9 8 constfloatpi pi 3 1415926 错误 第二章基本数据类型和表达式 2 6常量 constant 定义 2 const格式 const类型符号常量 常量如 constdoublePI 3 141592653常量只能读不能修改 定义时必须初始化 第二章基本数据类型和表达式 2 6常量 constant 定义 3 宏定义格式 define符号常量 参数列表 常量如 definePI3 141592653宏定义的符号常量无数据类型 39 第二章基本数据类型和表达式 4 相同类型的常量和变量在内存中占有相同大小的空间 但常量的内存空间值不可改变 变量的内存空间值可以改变 5 c中 编译预定义指令 define亦可定义常量 definevt 定义 详细说明 例 definePI3 1415926 40 第二章基本数据类型和表达式 2 7数值表达式1 无操作符的表达式 简单表达式如 54 3 987carf 2 算术操作符 加 减 乘 除 整除 求余 取正 取负 例 10 2 0 5 010 3 310 3 1 41 第二章基本数据类型和表达式 3 位操作符 右移 如k 2 按位或 k1 k2 按位与 如k1 k2 按位异或 如k1 k2 按位求反 如 k1 42 第二章基本数据类型和表达式 例 5 1值为2例 设E1为0000000000001101设E2为0000000000100101E1 E2值为0000000000101101E1 E2值为0000000000000101E1 E2值为0000000000101000 E2值为1111111111011010 43 第二章基本数据类型和表达式 例 5 2值为20 5 1值为2 十进制5 十进制20 十进制5 位运算操作符 注意 intx 7 x 8等于1x 8等于0 46 第二章基本数据类型和表达式 4 赋值操作符 赋值表达式 赋值操作符构成的表达式 赋值表达式的值为赋值号左边表达式的值 例 k 7 值为7k m 7 k m 7 值为7 47 第二章基本数据类型和表达式 5 复合赋值操作符 加赋值 减赋值 乘赋值 除或整除赋值 求余赋值 右移赋值 按位或赋值 48 第二章基本数据类型和表达式 6 增1减1操作符左值 能放在赋值号左边的表达式 例 k 5 k为左值 k 5 28 k 5为左值右值 只能出现在赋值号右边的表达式 例 k 4 4为右值constintb 100 b为常量 只能出现在赋值号右边 为右值 49 第二章基本数据类型和表达式 增量操作符表示加1 减量操作符表示减1 i 前增量 i 后增量 i 前减量 i 后减量 例 i i i 1i i i 1 i i i 1i i i 1注 增量和减量的操作对象均要求为左值 50 第二章基本数据类型和表达式 例如 intb a a a 1 b a intb a b a a a 1 intc a a a 1 c a intc a c a a a 1 51 第二章基本数据类型和表达式 前增量 前减量 在提取变量的值前先对变量增或减1 返回的值是修改后的变量值 故为左值 后增量 后减量 提取变量的值后才对变量增或减1 返回的值是修改前的变量值 故不为左值 例 a a a a k j 相当于 k j 号具右结合性同理 k 相当于 k 52 第二章基本数据类型和表达式 若有多个 或 连写时 编译总是将前面两个 或 认为是增量或减量操作符 例 c a b c a b c a b c a b c a b 53 第二章基本数据类型和表达式 7 sizeof操作符操作符sizeof 数据类型 可测定某数据类型所占字节长度 例如 cout sizeofintis sizeof int endl 输出为 sizeofintis2 54 第二章基本数据类型和表达式 8 优先级和结合性优先级 不同操作符出现在同一表达式中谁先运算的级别 例 d a b c 优先级比 高 55 第二章基本数据类型和表达式 结合性 同等优先级的操作符出现在同一表达式中谁先运算的规定 各种结合性请参照教材p345附录A例 d a b c 左 右d a 3 右 左C 中表达式的书写 56 第二章基本数据类型和表达式 9 自动类型转换和强制类型转换自动类型转换方向见图 57 自动类型转换转换方向返回 58 第二章基本数据类型和表达式 强制类型转换格式 类型修饰符 表达式类型修饰符 表达式 例 int 3 14 i 或 int 3 14 i char 64 8 或 char 64 8或 char 64 8 P34练习题 59 第二章基本数据类型和表达式 2 8逻辑型数据和逻辑表达式1 基本情况例 boolisOk ready true 2 关系操作符和逻辑操作符关系运算符 比较 大于 小于 小于等于 不等于 逻辑运算符 与 或 非 60 第二章基本数据类型和表达式 3 比较 比较 结果为真 非0 或假 0 表示 赋值 结果为 号左边表达式的值 4 复合条件子条件1 子条件2 如 x 2 x7 E1 E2 EnE1 E2 En 61 第二章基本数据类型和表达式 5 相反条件例如 x 3和x3的值为true 则x3和x 3是互为相反条件6 等价条件等价条件 两个逻辑表达式在任何情况下同为true或同为false 则这两个表达式所表示的条件称为等价条件 62 第二章基本数据类型和表达式 7 永真条件 总是成立的条件称为永真条件 例如 x 0 x12 x 5 false8 逻辑型数据与其它数据类型的关系 63 第二章基本数据类型和表达式 逻辑型数据作为数值数据使用时 false被转换成0 true被转换成1 字符型 枚举型 整型 实型数据的值作为逻辑值使用时 一切0值被转换成false 一切非零值被转换成true指针值作为逻辑值使用时 空指针被换成false 非空指针被转换成true总之 0即是false 非0即是true 64 第二章基本数据类型和表达式 9 条件操作符和条件表达式条件操作符 使用格式 条件 表达式1 表达式2条件表达式定义 由条件操作符构成的表达式称为条件表达式表达式的值 条件成立时为表达式1的值条件不成立时为表达式2的值例 score 60 pass fail 65 第二章基本数据类型和表达式 条件表达式可以嵌套例 x y greattha

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论