- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.4 C 语言的运算符与表达式 变量用来存放数据,运算符则用来处理数据。用运算符 将变量和常量连接起来的符合 C 语法规则的式子被称为 表达 式。 运算符的分类: 单目运算符:只带一个操作数的运算符。如: ++ 、 -- 运算符。 双目运算符:带两个操作数的运算符。如: + 、 - 运算符。 三目运算符:带三个操作数的运算符。如: ? 运算符。 学习运算符时应注意: ? 运算符的功能:该运算符主要用于做什么运算。 ? 与运算量关系:要求运算量的个数及运算量的类型。 ? 运算符的优先级:表达式中包含多个不同运算符时运算符运算的先 后次序。 ? 运算符的结合性:同级别运算符的运算顺序(指左结合性还是右结 合性)。 ? 运算结果的类型:表达式运算后最终所得到的值的类型。 运 算 符 算术运算符:( + - * / % ++ -- ) 关系运算符:( = == = != ) 逻辑运算符:((! || ) 位运算符 :( ~ | ^ ) 赋值运算符:( = 及其扩展) 条件运算符:( ?: ) 逗号运算符:( , ) 指针运算符:( * ) 求字节数 :( sizeof ) 强制类型转换:(类型) 分量运算符:( . - ) 下标运算符:( [] ) 其它 :( ( ) - ) 运算符的优先级和结合性 优 先 级 高 ( ) ~ ++ -- - (负号运算符) sizeof ( 类型 ) * / % + - (减法) ^ | = += -= *= /= %= = = = ^= |= 低 , 运 算 符 需要操作数的个数 结 合 性 从左向右 1 (单目运算符) 从右向左 2 (双目运算符) 从左向右 2 (双目运算符) 从左向右 2 (双目运算符) 从左向右 2 (双目运算符) 从左向右 2 (双目运算符) 从左向右 2 (双目运算符) 从左向右 2 (双目运算符) 从右向左 从左向右 1. 赋值运算符、赋值表达式 ? 赋值运算符(“ = ”,双目运算符) ? 一般形式: 变量 = 常量或变量或表达式 ? 功能: 将右边常量或变量或表达式的值赋给左边变量 ? 赋值表达式 例如: ? 定义: int x, y, z; x = 20; 由赋值运算符或复合赋值运算符(后面即将介绍),将一个变量和一 个表达式连接起来的表达式,称为 赋值表达式 。 y = x; ? 一般格式: z = x + y; 变量 (复合)赋值运算符 表达式 ? 赋值表达式的值: 被赋值变量的值。 例如: “ a = 5 ” 这个赋值表达式,变量 a 的值“5”就是它的值。 ? 赋值语句 ? 定义: 赋值表达式在其后面加分号就构成了 赋值语句 。 例如: x = 8; a = b = c = 5 ; ? 注意: 赋值运算符及赋值表达式的使用 ? 赋值语句“ = ” 左边必须是变量名或对应某特定内存 ? 多个变量连续赋值 单元的表达式 (后面的章节会遇到这样的表达式),不 例如: a = b = c = 10 ; 能是常量或其它表达式。 例如: 30 = a; b + 2 = 5; 都是错误的。 ? 赋值语句中的“ = ” 表示赋值,不是代数中相等的意 a = (b = (c = 10)) ; 结果: a 、 b 、 c 思。 要表示相等的意思则应用关系运算符“ == ” 表示, 的值都为 10 二者切勿混淆! ? 赋值表达式的嵌套 例如: a = (b = 2) + (c = 3) ( a = (b = 2) + (c = 3)) 结果: b 为 2 , c 为 3 , a 为 b+c 即 5 2. 强制类型转换符 C 语言的数据类型是可以相互转换的。转换的方法有两 种:一种是 自动转换 ,一种是 强制转换 。 ? 自动转换 例如: 例如: int a = 2.5; 则 a 的值将是 2, 而 不是 2.5 。 unsigned char ch = 0xfc; 这种自动改变等号右边表达式值的数据类型的操作称 unsigned int a = 0xff00; // 假设 int 数据为 16 位 为数据类型的 自动转换。 int b; (1) 短长度的数据类型 → 长长度的数据类型 首先将等号右边的表达式的值转换 unsigned long u; ? 成“ = ” 左边的数据类型。然后再赋值给 无符号短长度的数据类型 → 无符号或有符号长长度的数据类型 b = ch; //b 的值将是 0x00fc 等号左边的变量 。 方法: 直接将无符号短长度的数据类型的数据作为长长度的数据 u = a; //u 的值将是 0x0000ff
您可能关注的文档
最近下载
- 高中数学《集合的概念及其基本运算》导学教案.doc VIP
- 人教版八年级下英语单词默写表格(整理打印).pdf VIP
- 九年级下册数学《二次函数》二次函数的性质.doc VIP
- 第一批产学合作协同育人项目简介.doc VIP
- 女性生育力保存PPT课件.pptx VIP
- STEAM跨学科课程整合的理念、模式构建与实施挑战研究.docx VIP
- 产学合作协同育人创新创业教育改革项目申报书模板(包含内容).docx VIP
- 110千伏输电线路工程专业监理实施细则.doc VIP
- 智慧乡村、智慧农业产供销一体化、可追溯平台建设方案.pdf VIP
- 产学合作协同育人教学内容和课程体系改革项目申报书模板—基于计算思维的大学计算机课程思政案例构建与实践(包含申报书内容、合作方案、合作协议).docx
文档评论(0)