当前位置:天才代写 > tutorial > C语言/C++ 教程 > object-C中的数据范例转换

object-C中的数据范例转换

2017-11-02 08:00 星期四 所属: C语言/C++ 教程 浏览:795

差异范例数据间凭据下面干系的从左到右(从低到高)自动转换,

假如这些数据范例举办殽杂运算,运算中差异范例的数据先转化为同一范例,然后举办运算,转换从左到右自动转换,如表2-3所示。

表2-3 范例转换先后顺序表

操纵数1范例 操纵数2范例 转换后的范例
_Bool、char、short int、列举范例 int int
_Bool、char、short int、列举范例、int long int long int
_Bool、char、short int、列举范例、int、long int long long long long
_Bool、char、short int、列举范例、int、long int、long long float float
_Bool、char、short int、列举范例、int、long int、long long、float double double
_Bool、char、short int、列举范例、int、long int、long long、float、double long double long double

假如有下面的暗示式,个中,f是float范例,i为int范例,l为long int 范例,s为short int范例,功效是什么范例?

f * i + l /s

假如遵守范例转换是右到左环境,就需要强制范例转换了,强制范例转换语法形式上很简朴,就是在数据前面加上(方针范例),可是这种转换是存在风险的,有大概造成数据的丢失,需要审慎举办。譬喻:

long int l = 6666666666;

NSLog(@"l = %li",l);

int i = (int)l;

NSLog(@"i = %i",i);

强制转换有的时候嵌入在其它的表达式内里,它会与运行的优先级交叉在一起,环境就会变的越发巨大,假设有下面的几条语句:

int total = 3446;

int n = 6;

float average = total / n;

运行完成float的变量average功效是574.333,这个数据要比上面计较的准确,这是因为(float)total先把int范例的total变量转换成为float范例的total变量。

本文出自 “关东升” 博客,请务必保存此出处http://2009315319.blog.51cto.com/701759/716454

 

    关键字:

天才代写-代写联系方式