DBL_MAX is defined in <float.h>. Its availability in <limits.h> on unix is what is marked as "(LEGACY)".
(linking to the unix standard even though you have no unix tag since that's probably where you found the "LEGACY" notation, but much of what is shown there for float.h is also in the C standard back to C89)
Answer from Random832 on Stack OverflowDBL_MAX is defined in <float.h>. Its availability in <limits.h> on unix is what is marked as "(LEGACY)".
(linking to the unix standard even though you have no unix tag since that's probably where you found the "LEGACY" notation, but much of what is shown there for float.h is also in the C standard back to C89)
You get the integer limits in <limits.h> or <climits>. Floating point characteristics are defined in <float.h> for C. In C++, the preferred version is usually std::numeric_limits<double>::max() (for which you #include <limits>).
As to your original question, if you want a larger integer type than long, you should probably consider long long. This isn't officially included in C++98 or C++03, but is part of C99 and C++11, so all reasonably current compilers support it.
max value for DOUBLE ? - GameDev.net Forums
max value for DOUBLE ? - GameDev.net Forums
confused about the max limit we can store for float and double
Why don't float/double have a max & min value like 'int' or 'char'?
Just started learning C. so forigve me if this is a dumb question.
For int and long, the maximum number we can assign them is 2^32 and 2^64 respectively. how about for float and double? I know that double has higher precision of about 15 decimal points while float is 7.
i also know that float is 32 bit while double is 64 bit. So does that mean the highest we can store them (2^32)and (2^64) but with decimal points in between their numbers? i aslo learnt that these data type cant have unsigned value so does that value doubles?
source: https://www.tutorialspoint.com/cplusplus/cpp_data_types.htm#
There's no data shown for the limits floats and doubles have.
However, 'int' is -2147483648 to 2147483647 and 'char' is 0 to 255
Alright so this might be a stupid question but i need some help. I'm learning how to write in C++ for a class that I'm taking and I need to validate the data that a user could put in. I need to make sure it can take any number (decimal or integer) but not any string or other char. If this might work, I just want to know how large of an integer can be put into a long double. My idea is to use a loop to get it work and I want to use a long double for the decision statement so that the user could input valid info if they put something wrong. If there is a better way to do this, please let me know, but I am still only learning out so I ask that you're patient with me please.
Edit: Thank you all so much for the help, I'm only 3 weeks into this course and technically should not have learned loops or if else statements yet. I'm a little confused on the answers but Ill continue to try and figure them out. What I am specifically looking for is which what is the largest form of whole number that can be stored in a float that can also use any and all numbers before it. Like if 1 million was that largest a float could hold for integers, and I want to use 999,999 or 999,998 etc. etc. I'm using code blocks for anyone wondering since I've seen comments saying that the answer might vary depending on what I'm coding on