Para minha surpresa, acabei de descobrir que o C99 stdint.h está faltando no MS Visual Studio 2003 em diante. Tenho certeza que eles têm seus motivos, mas alguém sabe onde posso baixar uma cópia? Sem este cabeçalho, não tenho definições para tipos úteis, como uint32_t, etc.
c++
c
visual-studio
c99
Roubar
fonte
fonte
stdint.h
Respostas:
Acontece que você pode baixar uma versão MS deste cabeçalho em:
https://github.com/mattn/gntp-send/blob/master/include/msinttypes/stdint.h
Um portátil pode ser encontrado aqui:
http://www.azillionmonkeys.com/qed/pstdint.h
Agradecimentos ao blog da Software Rambling .
fonte
Basta defini-los você mesmo.
fonte
#define U64(u) (u##ui64)
no Windows e em#define U64(u) (u##ULL)
outros ambientes.Atualização: Visual Studio 2010 e Visual C ++ 2010 Express têm
stdint.h
. Pode ser encontrado emC:\Program Files\Microsoft Visual Studio 10.0\VC\include
fonte
std::
.O Visual Studio 2003-2008 (Visual C ++ 7.1-9) não afirma ser compatível com C99. (Obrigado a rdentato por seu comentário.)
fonte
Boost contém o arquivo de cabeçalho cstdint.hpp com os tipos que você está procurando: http://www.boost.org/doc/libs/1_36_0/boost/cstdint.hpp
fonte
<stdint.h>
, não um cabeçalho Boost.A Microsoft não oferece suporte ao C99 e não anunciou planos para isso. Eu acredito que eles pretendem rastrear os padrões C ++, mas consideram C como efetivamente obsoleto, exceto como um subconjunto de C ++.
Novos projetos no Visual Studio 2003 e posterior têm a opção "Compilar como código C ++ (/ TP)" definida por padrão, portanto, todos os arquivos .c serão compilados como C ++.
fonte
Outra solução portátil:
POSH: O chicote portátil de código aberto
"POSH é um" chicote "simples, portátil, fácil de usar, fácil de integrar, flexível e de código aberto, projetado para tornar a escrita de bibliotecas e aplicativos de plataforma cruzada significativamente menos tediosa para criar e transportar."
http://poshlib.hookatooka.com/poshlib/trac.cgi
conforme descrito e usado no livro: Escreva código portátil: uma introdução ao desenvolvimento de software para várias plataformas Por Brian Hook http://books.google.ca/books?id=4VOKcEAPPO0C
-Jason
fonte