Home > Uncategorized > Casting a float to a double

Casting a float to a double

Casting a float to a double looses precision in C#, causing bugs like this:

                float x = (float)12.34;
                double y = x;

What value is y?
12.34000015258789

If you really have to use floats, then this is an easy fix

double y = (double)(decimal)x;

Advertisements
Categories: Uncategorized
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: