C99 stdint.h cabecera y MS Visual Studio

Para mi sorpresa, descubrí que el C99 stdint.h no se encuentra en MS Visual Studio 2003. Estoy seguro de que tienen sus razones, pero ¿alguien sabe dónde puedo descargar una copia? Sin este encabezado no tengo definiciones para tipos útiles como uint32_t, etc.

Resulta que puede descargar una versión MS de este encabezado desde:

https://github.com/mattn/gntp-send/blob/master/include/msinttypes/stdint.h

Un portátil se puede encontrar aquí:

http://www.azillionmonkeys.com/qed/pstdint.h

Gracias al blog de Software Rambling .

Simplemente defínalos tú mismo.

 #ifdef _MSC_VER typedef __int32 int32_t; typedef unsigned __int32 uint32_t; typedef __int64 int64_t; typedef unsigned __int64 uint64_t; #else #include  #endif 

Actualización: Visual Studio 2010 y Visual C ++ 2010 Express ambos tienen stdint.h . Se puede encontrar en C:\Program Files\Microsoft Visual Studio 10.0\VC\include

Visual Studio 2003 – 2008 (Visual C ++ 7.1 – 9) no pretende ser compatible con C99. (Gracias a rdentato por su comentario).

Boost contiene el archivo de encabezado cstdint.hpp con los tipos que está buscando: http://www.boost.org/doc/libs/1_36_0/boost/cstdint.hpp

Microsoft no es compatible con C99 y no ha anunciado ningún plan para hacerlo. Creo que pretenden rastrear los estándares de C ++, pero consideran que C es efectivamente obsoleto, excepto como un subconjunto de C ++.

Los nuevos proyectos en Visual Studio 2003 y posteriores tienen la opción “Comstackr como código C ++ (/ TP)” establecida de forma predeterminada, por lo que cualquier archivo .c se comstackrá como C ++.

Otra solución portátil:

POSH: el arnés portátil de código abierto

“POSH es un arnés simple, portátil, fácil de usar, fácil de integrar, flexible, de código abierto, diseñado para hacer que la escritura de bibliotecas y aplicaciones multiplataforma sea mucho menos tediosa de crear y realizar en puerto”.

http://poshlib.hookatooka.com/poshlib/trac.cgi

como se describe y usa en el libro: Escribir código portátil: una introducción al desarrollo de software para plataformas múltiples Por Brian Hook http://books.google.ca/books?id=4VOKcEAPPO0C

-Jason