On Tue, 7 Oct 1997, Rich Chiavaroli wrote:
> Just a short question here about floats with ANSI C on AIX.
>
> This is an example of something I was trying to do.
>
> float a;
>
> a = 10 / 100;
>
> 'a' always comes back as 0. I've found a workaround for it but I was
> just curious if floats have to have a whole number part or if I was just
> doing something wrong. The formula was more complex but it would have
> produced a number between 0.01 and 0.99. On paper it should have anyway.
> But as soon as I divided by 100, the var became 0. I'm also curious if
> it can't be done like this, how is it supposed to be done...
>
> Thanks,
> Rich
No probs in c 10 and 100 are ints, so you must cast either 10 or 100 as a
float, ie few ways you can do it:
a = (float)10/100
a = 1.0*10/100 (1.0 being the float)
a = 10.0/100
note in these cases I thus have a float / int, c always takes highest one
so results = float.
Proky
+------------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
| http://democracy.queensu.ca/~fletcher/Circle/list-faq.html |
+------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/08/00 PST