Fundamentos da Linguagem C
Voltar para o índice
./02/limites.c
/******************************************************
Determinando o tamanho e a faixa dos tipos...
******************************************************/
#include <stdio.h>
#include <limits.h> // Precisamos das constantes dos limites
#include <float.h> // Limites dos tipos float e double
int main() {
printf(
"%-19s %s %25s %s\n\n"
"(signed) int %3ld %25d %d\n"
"unsigned int %3ld %25d %u\n"
"(signed) short int %3ld %25d %d\n"
"unsigned short int %3ld %25d %d\n"
"(signed) long int %3ld %25ld %ld\n"
"unsigned long int %3ld %25d %lu\n\n"
"(signed) char %3ld %25d %d\n"
"unsigned char %3ld %25d %d\n\n"
"float %3ld %25e %e\n"
"double %3ld %25e %e\n"
"long double %3ld %25Le %Le\n\n",
"TIPO", "BYTES", "MIN", "MAX",
sizeof(int), INT_MIN, INT_MAX,
sizeof(unsigned int), 0, UINT_MAX,
sizeof(short int), SHRT_MIN, SHRT_MAX,
sizeof(unsigned short int), 0, USHRT_MAX,
sizeof(long int), LONG_MIN, LONG_MAX,
sizeof(unsigned long int), 0, ULONG_MAX,
sizeof(char), CHAR_MIN, CHAR_MAX,
sizeof(unsigned char), 0, UCHAR_MAX,
sizeof(float), FLT_MIN, FLT_MAX,
sizeof(double), DBL_MIN, DBL_MAX,
sizeof(long double), LDBL_MIN, LDBL_MAX
);
return 0;
}