首页 >

对C语言程序中的常数做“强制类型转换”,有实际作用吗? – 网络|

电脑打开没小喇叭图标不见了怎么办,部分网页打不开怎么解决,怎么添加在线客服QQ对C语言程序中的常数做“强制类型转换”,有实际作用吗? - 网络|对C语言程序中的常数做“强制类型转换”,有实际作用吗1.首先看一下相同长度的强制类型转换。

代码:

shortx=-4321;

unsignedshorty=(unsignedshort)x;

可以发现,机器码一样,但x,y作为不同类型,解释的值不一样。

2.其次看下由长变短的强制类型转换。

intx=-4321;

shorty=(short)x;

这是由32位的int型,强制转换为16位的short型,结果如下

可以看出:高位直接阶段,低位直接赋值。

3.再次看下由短变长的强制类型转换。

shortx=4321;

inty=(int)x;

这是由16位的short型,强制转换为32位的int型,结果如下

可以看出:低位直接赋值,高位扩展为短字长的符号位(0为正,1为负)

总结:对于常数也是一样,强制类型转换的作用是把原有类型的机器数值解释为目标类型,所以是有重要意义的。


对C语言程序中的常数做“强制类型转换”,有实际作用吗? - 网络|
  • 服务器超时是什么意思啊? - 网络|
  • 服务器超时是什么意思啊? - 网络| | 服务器超时是什么意思啊? - 网络| ...

    对C语言程序中的常数做“强制类型转换”,有实际作用吗? - 网络|
  • UI交互设计和Web前端开发,入门的话,学哪个比较好? - 网络|
  • UI交互设计和Web前端开发,入门的话,学哪个比较好? - 网络| | UI交互设计和Web前端开发,入门的话,学哪个比较好? - 网络| ...

    对C语言程序中的常数做“强制类型转换”,有实际作用吗? - 网络|
  • 上古卷轴技能代码? - 网络|
  • 上古卷轴技能代码? - 网络| | 上古卷轴技能代码? - 网络| ...