我是C#的新用户,但他学会了制作小型简单游戏.所以我很开心并以这种方式训练C#.
但是,现在我需要将移动物体速度改变0.2,所以我可以使用间隔来改变速度,而不会使物体发出声音.我正在使用'int'值来设置对象的速度值.我的物体每毫秒移动2个像素(1/1000秒).我试过乘以2,但在这样做了一两次之后,对象会移动得那么快,它们就会出错.
通过网站上的其他问题查看,但找不到任何东西,这似乎可以帮助我.
所以:
是否可以创建一个包含小数值的'int'?
如果是,那么我怎样才能做到这一点,而不用冒着程序中的错误呢?
提前致谢!
是否可以创建一个包含小数值的'int'?
不,类型的变量int只能包含整数.在C#和CLR的世界中,a int是可以用32位表示的任何整数.没有更少,仅此而已.但是,十进制值可以用整数表示,请参阅下面的更新和注释,
在你的情况下,我认为a float或a double会做这项工作.(我没有提到decimal,因为我们decimal用于财务计算).
更新
下面的评论的一个重要结果,来自迈克,是因为a float可以用整数表示,实际上这是计算机获得浮点寄存器之前的情况.迈克的另一个贡献是我们可以在" 计算机编程艺术"第2卷第4章中找到更多相关信息.