|
![]() | 作者: kof0438 [kof0438]
![]() |
登录 |
我想问一个超级菜的问题啊!大虾门给指点一下好吗? 在C语言中,关于基本数据类型和运算一章,int 转 char 或者转long 这个过程是怎样的啊! 为什么我在书上都没有看见这方面的资料啊!谁知道啊~~~~~~~~~~!!!急啊~~ [此贴被 286(unique) 在 05月27日13时44分 编辑过] |
地主 发表时间: 04-05-27 13:34 |
![]() | 回复: apollomz [apollomz] ![]() |
登录 |
应该是应用强制类型转换 |
B1层 发表时间: 04-05-27 16:41 |
![]() | 回复: kof0438 [kof0438] ![]() |
登录 |
我知道是强制转换,但是不知道是如何进行的,有什么规律! |
B2层 发表时间: 04-05-27 21:24 |
![]() | 回复: xiaoshi [xiaoshi] ![]() |
登录 |
a=(int)b |
B3层 发表时间: 04-05-27 21:39 |
![]() | 回复: kof0438 [kof0438] ![]() |
登录 |
你们可能还是没有明白我的意思! 我的意思是说! 比如a=12 b=1.32 float a=12 float b.1.32 应该是这样的吧~为什么输出结果的时候如果定义int b=1.32就不行呢?我真的是不明白! long型和int型或者float型和char型到底是如何转换的!为什么int型定义的数等于65时。float型就等于65.00000呢? |
B4层 发表时间: 04-05-27 22:42 |
![]() | 回复: 286 [unique] ![]() |
登录 |
一个语言系统之所以定义数据的类型,就是因为不同类型在内存中的表现形式是不一样的。 int b=1.32 你定义b为int类型,系统就给该变量分配四个字节的空间,但未考虑小数点的位置(因为默认是无),而float a=1.32,除了把1放到个位位上,还把32放到小数位上,并且记住小数的位置。 至于long型和int型或者float型和char型之间的转换,不同编译系统也不完全相同,简单点说比如: int a; float b=1.23; a=(int)b; 系统就把b小数点前面的数给了a,这样a=1。 |
B5层 发表时间: 04-05-28 08:56 |
![]() | 回复: TomyChen [quest] ![]() |
登录 |
sprintf() 够用了 ![]() |
B6层 发表时间: 04-05-28 16:48 |
![]() | 回复: kof0438 [kof0438] ![]() |
登录 |
太谢谢了啊!286~~~我可以加你QQ吗!我的QQ是253528649 |
B7层 发表时间: 04-05-28 22:23 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号