   Simple questions about inttypes.h
  Hello, [smile]I had some questions about inttypes.h, or atleast the file that it includes, stdint.h:1) Is it a standard header? By this I mean that I can see it is a part of the gcc/mingw distribution, but do MSVC compilers (and others) have it?2) Are the sized typedef's automatically adjusted on a 64 bit platform, so that int32_t is always 32 bits large?3) Is there any standard header which defines sized floating point types?Thanks!   
  1)This:http://www-ccs.ucsd.edu/c/lib_over.htmlindicates that stdint.h is NOT a standard header.  Try limits.h for the C header and limits or climits for C++(as well as float.h see below)2)Don't know, depends on the compiler I guess.  Someone else will know I bet.3)Tryhttp://www-ccs.ucsd.edu/c/float.htmlfor C and tryhttp://msdn2.microsoft.com/en-us/library/85084kd6.aspxfor C++.Sorry for not having 'clicky'.  I recommend Firefox with Linkification extension :) Hope that helps.   ;  I was actually referring to fixed-size types [grin].However I decided to manually typedef (atleast for my platform now, later on maybe I'll be able to test and set the right typedef's on other platforms).Thanks anyway! [smile]   ;inttypes.h and stdint.h are both standard C99 headers.  Neither of them are standard C++ headers. Boost does have a C++ version of stdint.h though (<boost/cstdint.hpp>).Yes.  But note that the exact-width types are optional.  A fully conformant implementation is allowed not to provide them.Not that I am aware of.Σnigma   ;Quote:3) Is there any standard header which defines sized floating point types?No but these are standard.   ;Quote:Original post by Anonymous PosterQuote:3) Is there any standard header which defines sized floating point types?No but these are standard.Not true.  There is a standard for floating point types, but C and C++ implementations are not required to follow it (hence the C macro __STDC_IEC_559__ and the C++ numeric_limits member is_iec559).  In addition I believe it would be valid for a C or C++ implementation to use an iec-559 64-bit floating point type (for example) for all of float, double and long double.Σnigma   ;Quote:Original post by Anonymous PosterQuote:3) Is there any standard header which defines sized floating point types?No but these are standard.I was actually asking because the directx .x text file format has a value in the header for size of float (32 or 64).For now, I guess float = 32bit precision float, double = 64bit precision float; and there is no 16bit float in C++.Thanks for the info, Enigma! [smile]   ;  Unfortunately MSVC does not have inttypes.h or stdint.h.  But then MSVC is not a C99 compiler either.   