Stdint.h
Stdint.h é um arquivo cabeçalho da linguagem de programação em C que deverá declarar conjuntos de tipos inteiros com larguras especificadas, e deve definir conjuntos correspondentes de macros. Deve também definir macros que especificam limites de tipos inteiros correspondentes aos tipos definidos em outros cabeçalhos padrão.
Largura
A "largura" de um tipo de número inteiro é o número de bits utilizados para armazenar o valor de um sistema binário puro, o tipo real pode usar mais bits do que necessário(por exemplo, um tipo de 28 bits pode ser armazenado em 32 bits de real armazenamento). Um tipo de N-bit tem valores no intervalo de -2^(N-1) ou 1-2^(N-1) e 2^(N-1)-1, enquanto que um tipo de N-bits sem sinal tem valores no intervalo de 0 a 2^N-1.
Tipos são definidos nas seguintes categorias:
Os tipos inteiros com certas larguras exatas
- Tipos inteiros com pelo menos certas larguras especificadas
- Mais rápidos tipos inteiros com pelo menos certas larguras especificadas
- Os tipos inteiros grandes o suficiente para armazenar ponteiros para objetos
- Os tipos inteiros com maior largura
(Alguns destes tipos pode denotar o mesmo tipo.)
Macros correspondentes especificar limites dos tipos declarados e construir constantes adequadas.
Para cada tipo aqui descrito que a aplicação proporciona, o cabeçalho <stdint.h> deverá declarar que o nome de typedef e definir as macros associadas. Por outro lado, para cada tipo aqui descrito que a implementação não fornece, o cabeçalho <stdint.h> não declara que o nome de typedef, nem deve definir as macros associadas. Uma implementação deve fornecer esses tipos descritos como necessário, mas não precisa de apresentar qualquer um dos outros (descrito como opcional).