文档详情

第二章 数据类型运算符和表达式.ppt

发布:2020-02-23约1.75万字共90页下载文档
文本预览下载声明
赋值运算符与赋值表达式 赋值语句“=”左边必须是变量名或对应某特定内存单元 的表达式不能是常量或其它表达式。 例如:30 = a; b + 2 = 5; 都是错误的。 赋值语句中的“=”表示赋值,不是代数中相等的意思。 要表示相等的意思则应用关系运算符“==”表示,二者 切勿混淆! 注意: 变量 与常量 整型数据 C语言的 数据类型 浮点型数据 数据类型、运算符与表达式 学习内容 字符型数据 算术运算符与算术表达式 赋值运算符与赋值表达式 逗号运算符与逗号表达式 强制类型转换运算符 强制类型转换运算符 不同 数据 类型 的转 换 自动转换 强制转换------通过强制类型转换运算符转换 运算转换------不同类型数据混合运算时 赋值转换------把一个值赋给与其类型不同的变量时 输出转换------输出时转换成指定的输出格式 函数调用转换------实参与形参类型不一致时转换 强制类型转换运算符 自动转换------运算转换: double float long unsigned int char,short 低 高 必定的转换 运算对象类型不同时转换 例: char ch; int i; float f; double d; ch/i + f*d - (f+i) int int double double double double double double int int double double double double double double 10+‘a’ +i*f - d/m 例: int i; float f; double d; long m; 强制类型转换运算符 (1) 短长度的数据类型 → 长长度的数据类型 方法:直接将无符号短长度的数据类型的数据作为长长度的数据类型数据的低位部分,长长度的数据类型数据的高位部分补零。 无符号短长度的数据类型 → 无符号或有符号长长度的数据类型 例如: unsigned char ch = 0xfc; unsigned int a = 0xff00; //假设int数据为16位 int b; unsigned long u; b = ch; //b的值将是0x00fc u = a; //u的值将是0x0000ff00 自动转换------赋值转换: 例 补码 取反 加1-7 负数补码转换成十进制数:最高位不动,其余位取反加1 整型数据 考虑补码:1000000000000000、1111111111111111的十进制数 负数补码转换成十进制数:最高位不动,其余位取反,得到 十进制数减1 整型数据 整型变量 定义:int 变量名[, 变量名2,……,变量名n]; int必须小写 至少一个空格 必须为合法的标识符 以逗号,分隔 以分号;结尾 定义时可以赋初值,方法:在变量名后面增加“= 数值” 例: int a; int x, y, z; int m = 2, y = -3; 当程序中定义了一个变量时,计算机会为这个变量分配一个相应大小的内存单元。因此,这个变量是有值的,它的值就是对应内存单元的值。如果定义时没有赋初值,则这个值程序员是无法预知的。 整型数据 整型变量的分类 控制变量是否有符号:signed(有符号)和unsigned(无符号) 控制整型变量的值域范围 :short(短)和long(长)。 在int前可以根据需要可加上修饰符 6 种 整 型 变 量 有符号基本整型 无符号基本整型 有符号短整型 无符号短整型 有符号长整型 无符号长整型 [signed] int unsigned int [signed] short [int] unsigned short [int] [signed] long [int] unsigned long [int] 整型数据11111111 低地址 高地址 低字节 高字节 符号位 变量a占用的内存单元(2字节) unsigned int a = -2; //定义一个无符号整
显示全部
相似文档