Embellished sample of the limits library interface

This library defines constants that specify the largest and smalest sizes of various basic data types on your computer.

// File limits.h.
// Interface of the limits library.
///////////////////////////////////////////////////////////

#ifndef _LIMITS_H
#define _LIMITS_H


///////////////////////////////////////////////////////////
// Smallest and largest values of various data types. 
///////////////////////////////////////////////////////////

// Minimal value and maximal value of the data type int.
// Typically values are -2^{31} and 2^{31}-1, respectively.

#define INT_MIN  (-2147483648)
#define INT_MAX   (2147483647)


// Maximal value of the data type unsigned int. Typically
// 2^{32}-1.

#define UINT_MAX  (4294967295)


// Minimal value (-2^{15}) and maximal value (2^{15}-1) of
// the data type short int.

#define SHRT_MIN      (-32768)
#define SHRT_MAX       (32767)


// Minimal and maximal values the data type long int. In 64
// bits computers, the values are -2^{63} and 2^{63}-1
// respectively. In 32 bits computers the values are
// -2^{31} and 2^{31}-1.

#define LONG_MIN (-9223372036854775808L)
#define LONG_MAX  (9223372036854775807L)

  
#endif