C语言数据类型转换.pptx

上传人:莉*** 文档编号:87391540 上传时间:2023-04-16 格式:PPTX 页数:11 大小:111.24KB
返回 下载 相关 举报
C语言数据类型转换.pptx_第1页
第1页 / 共11页
C语言数据类型转换.pptx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《C语言数据类型转换.pptx》由会员分享,可在线阅读,更多相关《C语言数据类型转换.pptx(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 发生在不同数据类型的量混合运算时,由编译系统自动完成。1若参与运算量的类型不同,则先转换成同一类型,然后进行运若参与运算量的类型不同,则先转换成同一类型,然后进行运算。算。2.转换按转换按数据长度增加的方向数据长度增加的方向进行,以保证精度不降低。如进行,以保证精度不降低。如int型型和和long型运算时,型运算时,先把先把int量转成量转成long型型后再进行运算。后再进行运算。第1页/共11页3.所有的浮点运算都是以所有的浮点运算都是以双精度双精度进行的,即使仅含进行的,即使仅含float单精度量运算的表单精度量运算的表达式,也要先转换成达式,也要先转换成double型型,再作运算。,再

2、作运算。4.char型和型和short型型参与运算时,必须参与运算时,必须先转换成先转换成int型。型。5.在赋值运算中,赋值号两边量的数据类型不同时,赋值号在赋值运算中,赋值号两边量的数据类型不同时,赋值号右边量的类型右边量的类型将转换为左边量的类型。将转换为左边量的类型。如果右边量的数据类型长度比左边长时,将丢失如果右边量的数据类型长度比左边长时,将丢失一部分数据,这样会降低精度,丢失的部分按四舍五入向前舍入。一部分数据,这样会降低精度,丢失的部分按四舍五入向前舍入。第2页/共11页back 2 第3页/共11页该程序中,程序中,PI为为实实型;型;s,r为为整整型。在型。在执执行行s=r

3、*r*PI语语句句时时,r和和PI都都转换转换成成double型型计计算,算,结结果也果也为为double型。但型。但由于由于s为为整型,故整型,故赋值结赋值结果仍果仍为为整整型,舍去了小型,舍去了小数数部分。部分。#include int main()float PI=3.14159;int s,r=5;s=r*r*PI;printf(s=%dn,s);getchar();第4页/共11页当赋值运算符两边的运算对象类型不同时,将要发生类型转换,转换的规则是:把赋值运算符右侧表达式的类型转换为左侧变量的类型。第5页/共11页具体的转换如下:(1)浮点型与整型将将浮点浮点数数(单单双双精度精度)

4、转换为转换为整整数数时时,将将舍弃浮点舍弃浮点数数的小的小数数部分,部分,只保留整只保留整数数部部分。分。将将整型整型值赋给值赋给浮点型浮点型变变量,量,数数值值不不变变,只,只将将形式改形式改为为浮点形式,浮点形式,即小即小数数点点后后带带若干若干个个0。注意:。注意:赋值时赋值时的的类类型型转换实际转换实际上是强制的。上是强制的。(2)单单、双双精度浮点型精度浮点型由于由于C语语言中的浮点言中的浮点值总值总是用是用双双精度表示的,所以精度表示的,所以float 型型数数据只是在尾部加据只是在尾部加0延延长为长为doub1e型型数数据据参参加加运运算,然后直接算,然后直接赋值赋值。doub1

5、e型型数数据据转换为转换为float型型时时,通,通过过截尾截尾数来数来实现实现,截,截断断前要前要进进行四舍五入操作。行四舍五入操作。第6页/共11页(3)char型型与与int 型型int型数值赋给char型变量时,只保留其最低8位,高位部分舍弃。chr型数值赋给int型变量时,一些编译程序不管其值大小都作正数处理,而另一些编译程序在转换时,若char型数据值大于127,就作为负数处理。对于使用者来讲,如果原来char型数据取正值,转换后仍为正值;如果原来char型值可正可负,则转换后也仍然保持原值,只是数据的内部表示形式有所不同。(4)int型型与与1ong 型型long型数据赋给int

6、型变量时,将低16位值送给int型变量,而将高16 位截断舍弃。(这里假定int型占两个字节)。将int型数据送给long型变量时,其外部值保持不变,而内部形式有所改变。第7页/共11页(5)无符号整数将将一一个个unsigned 型型数数据据赋给一一个个占据同占据同样长度存度存储单元的整型元的整型变量量时(如:如:unsignedint、unsigned longlong,unsigned shortshort),原,原值照照赋,内内部的存部的存储方式不方式不变,但外部,但外部值却可能改却可能改变。将将一一个个非非unsigned整型整型数数据据赋给长度相同的度相同的unsigned型型变量

7、量时,内内部存部存储形式不形式不变,但外部表示,但外部表示时总是无符是无符号号的。的。第8页/共11页可以利用强制可以利用强制类型型转换运运算符算符将将一一个个表表达达式式转换成所需成所需类型型:例如:例如:(double)a (将将a转换成成double类型型)(int)(x+y)(将将x+y的的值转换成整型成整型)(float)(5%3)(将将5%3的的值转换成成float型型)(int)(1.5+2.3)=3 对于于从从高到低的强制高到低的强制转换,实质上就是一上就是一个个截截断断的操作,只把低端需要的部分保留,其的操作,只把低端需要的部分保留,其余的部分直接余的部分直接扔扔掉了。掉了。第9页/共11页第10页/共11页感谢您的观看!第11页/共11页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁