第一句子大全,网罗天下好句子,好文章尽在本站!

C语言小白学习――数据类型的转换及转换规则

时间:2015-03-16

如int型和long型运算时,先把int量转成long型后再进行运算a、若两种类型的字节数不同,转换成字节数高的类型b、若两种类型的字节数相同,且一种有符号,

友情提示:本文共有 1033 个字,阅读大概需要 3 分钟。

1.不同类型数据间的混合运算与类型转换:

①若参与运算量的类型不同,则先转换成同一类型,然后进行运算

②转换按数据长度增加的方向进行,以保证精度不降低。如int型和long型运算时,先把int量转成long型后再进行运算

a、若两种类型的字节数不同,转换成字节数高的类型

b、若两种类型的字节数相同,且一种有符号,一种无符号,则转换成无符号类型

③所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算

④char型和short型参与运算时,必须先转换成int型

⑤在赋值运算中,赋值号两边量的数据类型不同时,赋值号右边量的类型将转换为左边量的类型。如果右边量的数据类型长度左边长时,将丢失一部分数据

2.C语言转换规则:

(1)整数和浮点型:

浮点型转换成整型时,小数部分被省略,如果其值不能被整型表示,则其行为未定义。注意:将负的浮点型转换成unsigned int 结果是没有定义的。

当把整型转换成浮点型时,如果该值是在可表示范围内,则结果可能是下一个较高或者较低的可表示值。如果结果在范围外,则行为未定义。

(2)浮点型:

将较低精读浮点型转换成较高浮点型时:值不变。

将较高精度转换成较低精度时:在范围内,值不变,在范围外,结果为定义

(3)整型提升:

如果原始类型都可以用int表示,则将其转换成int,否则被转换成unsigned int

(4)整型转换:

将unsigned 转换成 signed 时,如果可以在新类型表示,则表示,如果不能表示,结果与具体实现有关,将signed 转换成unsigned时,若unsigned位数窄,对二进制补码进行左截取,若unsigned宽,对signed进行符号扩展。

(5)指针和整数:

指针可加上或着减去一个整数,转换规则按照加法运算符号方式进行,两个指向同一数组的指针可进行加减运算,方式按照算数转换规则,值为0的整型常量或者void*型表达式可转换成任意类型的指针,指针可以转换成整型,注意整型必须足够大,整型对象可以转换成指针,一般用于将一个足够宽的从指针转换来的整型转换成(恢复)指针,不同类型的指针间可以相互转换,但必须满足内存对齐条件,一个指针可以转换成同意类型的另一个指针,但是可以增加或者删除另一个指针的限制符,如果和另一个指针,增加了相同的修饰符,则和另一个指针一样,如果删除了修饰符,则底层对象的运算仍受到原声明的限制。

更多精彩,请关注我的头条号“c语言游戏开发”。

本文如果对你有帮助,请点赞收藏《C语言小白学习――数据类型的转换及转换规则》,同时在此感谢原作者。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
学员问:C语言入门要掌握哪些基础知识?

学员问:C语言入门要掌握哪些基础知识?

...原作者所有,意在传播相关技术知识&行业趋势,供大家学习交流,若涉及作品版权问题,请联系删除或授权事宜。

2010-02-07 #经典句子

令小白头痛的C语言 到底该怎么学?

令小白头痛的C语言 到底该怎么学?

#c语言#C语言作为现在大多数理工科本科生的必修课,很多从未有过编程概念的同学也不得不开始学习这门课程。但是由于授课老师水平参差不齐,有些学生学着学着便开始直呼“头痛”,不得不说是十分真实了。作为必修课,...

2007-11-15 #经典句子

小白都能学会的Python技术 解决csv和txt的文件处理 提高效率!

小白都能学会的Python技术 解决csv和txt的文件处理 提高效率!

前言及工具安装:不管小白也好,还是刚学有成,这篇文章一定对你有用。只要跟着以下实现的步骤流程,能耐心的看下去,即使是小白,也能学会这项技能。因为这些都是很基础的知识,不需要太多的逻辑实现,更谈不到什么...

2024-01-19 #经典句子

NLP自然语言处理 Transduction(转导)的迷你教程

NLP自然语言处理 Transduction(转导)的迷你教程

@[TOC]内容介绍transduction(转导)或 transductive learning(直推式学习)是您在应用机器学习中可能会遇到的术语。该术语正与循环神经网络在序列预测问题上的一些应用一起使用,例如自然语言处理领域中的一些问题。什么是Transduction...

2023-11-13 #经典句子

想要用好自然语言处理技术 先要克服这些困难!

想要用好自然语言处理技术 先要克服这些困难!

...会上,马云公布达摩院的研究领域包括:量子计算、机器学习、自然语言处理、基础算法、等前沿技术再次掀起了前沿科技讨论的浪潮。人工智能已经是大部分普通人都耳熟能详的词汇,而人们对自然语言处理技术的了解程度却...

2023-10-07 #经典句子

海南专升本-《C语言程序设计》课程考试大纲

海南专升本-《C语言程序设计》课程考试大纲

...(2)理解变量定义实质。(3)不同数据类型之间的相互转换,特别是逻辑型与数值型的转换。第三章 简单的算术运算和表达式1、本章要求(1)掌握用C语言求解实际问题的一般过程。(2)了解算法及表示方法。(3)掌握常用...

2014-09-25 #经典句子

Python语言基础知识点

Python语言基础知识点

...str类型的对象”11”Int和str类型不能直接相加,不会自动转换2、变量的声明和赋值变量名和赋值的格式:“变量名=要赋的值”Python变量被访问之前必须被初始化,即赋值,否则会报错。3、链式赋值语句格式:“变量1=变量2=表达...

2023-01-08 #经典句子

(三语)一段代码让你Red语言快速入门——R1.3

(三语)一段代码让你Red语言快速入门——R1.3

...编程系列,三语是英文、中文加计算机语言;即用英语来学习编程语言,并以中文为辅助;* 用英语来理解和学习计算机语言是最好的方式,这一系列的文章力求帮助大家在计算机语言上和英语阅读能力上都有所提升;* 推荐的...

2023-11-20 #经典句子