Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C#4.0
double has 64 bit size
decimal has 128 bit size
then also why decimal has small range than double.
Posted 17-Oct-12 0:24am
fdiu497
Comments
Sushil Mate at 17-Oct-12 6:26am
   
hey you back again with another question :)
rtn acp at 17-Oct-12 6:39am
   
today i headache for you.ha ha
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Because the decimal have greater precision than the double.
 
decimal: 28-29 significant digits
double: 15-16 digits.
 
To get more information, select the keyword 'double' or 'decimal' in visual studio and hit key F1.
  Permalink  
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

Because a decimal has more significant digits than a double, while a double has a larger exponent.
 
It's like the difference between an integer that can hold 6 digits, and a float that can hold three, with a three digit exponent.
The range of the integer is 0 - 999999, while the float is 0 - 999E999.
While the later can hold larger values, the former is more accurate - the float can't hold 999999, the closest it can come is 999E3, or 999000, or perhaps 1E6 (1000000)
 

[edit]Added the 1E6 bit - OriginalGriff[/edit]
  Permalink  
v2

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 339
1 _Amy 310
2 Nirav Prabtani 268
3 Sergey Alexandrovich Kryukov 216
4 CHill60 170
0 OriginalGriff 7,889
1 Sergey Alexandrovich Kryukov 7,006
2 Maciej Los 4,014
3 Peter Leow 3,708
4 CHill60 2,762


Advertise | Privacy | Mobile
Web02 | 2.8.140721.1 | Last Updated 17 Oct 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100