c语言中的类型转换(有关内存中的形态)

Posted 生姜不爱蒜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中的类型转换(有关内存中的形态)相关的知识,希望对你有一定的参考价值。

 需要理解的是,对一个变量进行类型转换,并不是修改这个变量的类型,而是创建了这个变量的拷贝,原本的数据类型是不变的,参与运算的是拷贝后的变量。

 

1、对于隐式转换(即计算机自己完成的类型转换)

对于两个变量x,y之间的运算,若他们的类型相同,则计算结果类型相同,若两者类型不同,则表达式的类型与综合性最高的部分相同。综合性排名如下(由低到高)

char
short
int
long
long long
float
double
long double

 

对于赋值时的转换

   注意:赋值时是等号右边的类型向等号左边的类型转换,也就意味着,并不一定是类型的提升,有可能是数据的降低(此时大多数编译器会发出警告)

2、显示转换

int i;

(float) i;//拷贝i的值,拷贝值为float型

指针同理

以上是关于c语言中的类型转换(有关内存中的形态)的主要内容,如果未能解决你的问题,请参考以下文章

C 中的共享内存代码片段

C语言进阶-数据的存储

C语言进阶-数据的存储

C语言学习 -- 整型与浮点型在内存中的存储

需要示例代码片段帮助

3分钟带你了解C语言中整形在内存中的存储