C语言强制类型转换的疑惑

2020-02-01 16:14发布

谁能告诉我cmd =(unsigned char)-1 ;  cmd的值为多大? cmd的定义类型为unsigned char
也请求高人,讲解一些与强制类型转换的知识。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
asdf1776
1楼-- · 2020-02-02 15:41
yoz 发表于 2013-2-2 11:28
刚才说错了,(int)5.75==0

float a=5.75;

%d怎么能和float连用?
你这种写法在我公司会被罚款
yoz
2楼-- · 2020-02-02 19:44
 精彩回答 2  元偷偷看……
yoz
3楼-- · 2020-02-03 00:29
本帖最后由 yoz 于 2013-2-2 11:46 编辑
asdf1776 发表于 2013-2-2 11:42
%d怎么能和float连用?
你这种写法在我公司会被罚款


只是故意看看这种不匹配的后果
(补充)
我本来以为按照ieee754存储的float也是32位,能否在printf中用%d来强制把这四个字节当作int来输出,结果好像并不如我所愿。
feixiang1990
4楼-- · 2020-02-03 05:58
谢谢 大家 虽然还是有点小疑惑,不过还是很感谢大家,看来只能回家看课本了
yoz
5楼-- · 2020-02-03 09:12
我也是,还需要多学习,谢谢各位指点。
i_kkyu
6楼-- · 2020-02-03 13:19
feixiang1990 发表于 2013-2-2 11:53
谢谢 大家 虽然还是有点小疑惑,不过还是很感谢大家,看来只能回家看课本了 ...

先理论分析。然后机器验证一下。

一周热门 更多>