| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 420 人关注过本帖
标题:[求助]float转化为int出错
收藏  订阅  推荐  打印 
zzymoon
Rank: 2
等级:注册会员
帖子:79
积分:890
注册:2006-9-19
[求助]float转化为int出错

printf("%d", power(2,3));答案为0

搜索更多相关主题的帖子: float  int  power  
2006-9-21 10:05
jxnuwy04
Rank: 4
等级:高级会员
威望:4
帖子:768
积分:7836
注册:2006-9-15

以下是引用zzymoon在2006-9-21 10:05:02的发言:

printf("%d", power(2,3));答案为0

能不说明白一点.


------------------不为别的,就为你,我的理想!-----------------
2006-9-21 10:56
神经塔
Rank: 12Rank: 12Rank: 12
等级:贵宾
威望:20
帖子:1984
积分:19972
注册:2006-7-1

把你的帖子完整的贴出来!


[shadow=255,red,2]待到秋来九月八,我花开时百花杀。冲天香阵透长安,满城尽是黄金甲。 [/shadow]
2006-9-21 11:32
zzymoon
Rank: 2
等级:注册会员
帖子:79
积分:890
注册:2006-9-19

#include "stdio.h"
#include "math.h"
main()
{
printf("%d",pow(2,3));
}
为什么输出结果为0?

pow(m,n);是求m的n次方,返回的是float型数据,这里就是将float转化成为了int 型以%d输出
请问float型在内存中是怎么样存放的?由float转化为int应该是截取后16位,那么答案也不可能是0撒?

再比如:printf("%d",234.0);为什么输出结果也是0?

而且在VS中pow(m,n)中的m和n都不能是整数。例如:pow(2,3)会提示参数错误,不过如果是:pow(2.0,3.0)就不会有问题

程序天下,C的亡魂。 偶``````来自地狱
2006-9-21 12:28
stnlcd
Rank: 3Rank: 3
等级:中级会员
帖子:176
积分:2310
注册:2004-11-21

printf("%d",(int)pow(2,3));
printf("%d",(int)234.0);

要让一个男人破产,请给他一架相机,要让一个男人倾家荡产,请给他一架望远镜。
2006-9-21 16:29
zzymoon
Rank: 2
等级:注册会员
帖子:79
积分:890
注册:2006-9-19

这也就是说printf中没有进行数据自动转换的功能?

程序天下,C的亡魂。 偶``````来自地狱
2006-9-21 22:40
nuciewth
Rank: 12Rank: 12Rank: 12
来自:我爱龙龙
等级:版主
威望:93
帖子:9521
积分:95068
注册:2006-5-23

不是没有,你想象成double--->int,这个是不可以的.


倚天照海花无数,流水高山心自知。
2006-9-21 22:46
balenoww
Rank: 1
等级:新手上路
帖子:3
积分:130
注册:2006-9-21

printf可以进行数据转换,只需要定义就OK了
2006-9-22 09:20
qhyjxy
Rank: 1
等级:新手上路
帖子:12
积分:220
注册:2006-9-21

#include "stdio.h"
#include "math.h"
main()
{ int a;

a=pow(3,2);

printf("%d",a);
getch();
}
你试下这是不是你想要的呀?


2006-9-23 01:25
zzymoon
Rank: 2
等级:注册会员
帖子:79
积分:890
注册:2006-9-19

谢谢各位了,我知道了

程序天下,C的亡魂。 偶``````来自地狱
2006-9-25 14:33
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.079961 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved