版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章类型转换和运算符
不同数据类型之间的转换运算符doublefloatlongunsignedintchar,short低高说明:必定的转换运算对象类型不同时转换例charch;
inti;floatf;doubled;ch/i+f*d-(f+i)intintdoubledoubledoubledoubledoubledouble1.隐式转换运算转换规则:不同类型数据运算时先自动转换成同一类型显式转换(强制转换)一般形式:(类型名)(表达式)例(int)(x+y)
(int)x+y
(double)(3/2)
(int)3.6说明:强制转换得到所需类型的中间变量,原变量类型不变例main(){floatx;inti;x=3.6;i=(int)x;printf(“x=%f,i=%d”,x,i);}结果:x=3.600000,i=3精度损失问题较高类型向较低类型转换时可能发生赋值运算符和表达式简单赋值运算符符号:=格式:变量标识符=表达式作用:将一个数据(常量或表达式)赋给一个变量复合赋值运算符种类:+=-=*=/=%=《=》=&=^=|=含义:exp1op=exp2exp1=exp1opexp2a+=3a=a+3x*=y+8x=x*(y+8)x%=3x=x%3例a=3;c=d+2;说明:结合方向:自右向左优先级:2左侧必须是变量,不能是常量或表达式赋值表达式的值与最左边变量值相等,且可嵌套赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型例3=x-2*y;
a+b=3;例
floatf;
inti;i=10;f=i;则
f=10.0例inti;i=2.56;//结果i=2;例:a=b=c=5a=(b=10)/(c=2)
//表达式值为5,a,b,c值为5
//表达式值5,a=5,b=10,c=2说明:结合方向:自右向左优先级:2左侧必须是变量,不能是常量或表达式赋值表达式的值与最左边变量值相等,且可嵌套赋值转换规则:使赋值号右边表达式值自动转换成其左边变量的类型例:a=12;a+=a-=a*a例:inta=2;a%=4-1;a+=a*=a-=a*=3;//a=-264等价于a=a+(a=a-(a*a))//a=0等价于a=a+(a=a*(a=a-(a=a*3)))//a=a%(4-1)自增、自减运算符++--作用:使变量值加1或减1,本身是赋值运算种类:前置++i,--i(先执行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再执行i+1或i-1)例j=3;k=++j;
j=3;k=j++;
j=3;printf(“%d”,++j);j=3;printf(“%d”,j++);a=3;b=5;c=(++a)*b;a=3;b=5;c=(a++)*b;<>//k=4,j=4//k=3,j=4//4//3//c=20,a=4//c=15,a=4自增、自减运算符++--作用:使变量值加1或减1种类:前置++i,--i(先执行i+1或i-1,再使用i值)后置i++,i--(先使用i值,再执行i+1或i-1)说明:++--不能用于常量和表达式,如5++,(a+b)++++--结合方向:自右向左优先级:-++-------->*/%----->+-
(14)(13)(12)例-i++-(i++)i=3;printf(“%d”,-i++);//-3
例-i++i=3;printf(“%d”,-i++);逗号运算符和表达式
“,”是C语言中的一种特殊运算符
用逗号将表达式连接起来的式子成为逗号表达式形式:表达式1,表达式2,……表达式n结合性:从左向右优先级:1逗号表达式的值:等于表达式n的值例a=3*5,a*4a=3*5,a*4,a+5例x=(a=3,6*3)
x=a=3,6*a例a=1;b=2;c=3;
printf(“%d,%d,%d”,a,b,c);
printf(“%d,%d,%d”,(a,b,c),b,c);//a=15,表达式值60//a=15,表达式值20//赋值表达式,表达式值18,x=18//逗号表达式,表达式值18,x=3//1,2,3//3,2,3逗号运算符和表达式形式:表达式1,表达式2,……表达式n结合性:从左右优先级:1逗号表达式的值:等于表达式n的值例:/*ch2_6.c*/#include<stdio.h>main(){int
x,y=7;floatz
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环境空气质量监测站巡检手册
- 基因编辑脱靶实时监测论文
- 福建省国有资产管理有限公司权属企业招聘考试真题2025
- 幼儿园科学领域制作类活动中教师指导研究-以P市H幼儿园大班幼儿为例
- 故事情境融入大班幼儿积木建构游戏活动的行动研究
- 智能体应用生态系统的构建现状及其演进趋势分析
- 数据资产相关法律规制研究及其演进趋势分析
- 开学简单大方的自我介绍
- 浅谈学习新律师法心得体会
- 楚香凝2026重庆选调行测数量真题解析
- 2025年地理学常识普及试题及答案解析
- 物业项目经理培训课件
- 桃树的种植与管理
- 项目沟通培训课件模板
- 纸制品包装行业知识培训课件
- 红十字会初级救护员理论考试试题(附答案)
- 医院危险化学品培训知识课件
- 2025年中国银行招聘考试试题及答案
- 双重差分模型(DID)原理与应用
- 创伤后尿道瘘的护理课件
- 学龄前儿童心理健康发展纲要
评论
0/150
提交评论