Limits of Basic Types

Limits of Basic Types — portable method of determining the limits of the standard types.

Synopsis


#include <glib.h>


#define     G_MININT
#define     G_MAXINT
#define     G_MAXUINT

#define     G_MINSHORT
#define     G_MAXSHORT
#define     G_MAXUSHORT

#define     G_MINLONG
#define     G_MAXLONG
#define     G_MAXULONG

#define     G_MININT8
#define     G_MAXINT8
#define     G_MAXUINT8

#define     G_MININT16
#define     G_MAXINT16
#define     G_MAXUINT16

#define     G_MININT32
#define     G_MAXINT32
#define     G_MAXUINT32

#define     G_MININT64
#define     G_MAXINT64
#define     G_MAXUINT64

#define     G_MAXSIZE

#define     G_MINFLOAT
#define     G_MAXFLOAT

#define     G_MINDOUBLE
#define     G_MAXDOUBLE

Description

These macros provide a portable method to determine the limits of some of the standard integer and floating point types.

Details

G_MININT

#define G_MININT	INT_MIN

The minimum value which can be held in a gint.


G_MAXINT

#define G_MAXINT	INT_MAX

The maximum value which can be held in a gint.


G_MAXUINT

#define G_MAXUINT	UINT_MAX

The maximum value which can be held in a guint.


G_MINSHORT

#define G_MINSHORT	SHRT_MIN

The minimum value which can be held in a gshort.


G_MAXSHORT

#define G_MAXSHORT	SHRT_MAX

The maximum value which can be held in a gshort.


G_MAXUSHORT

#define G_MAXUSHORT	USHRT_MAX

The maximum value which can be held in a gushort.


G_MINLONG

#define G_MINLONG	LONG_MIN

The minimum value which can be held in a glong.


G_MAXLONG

#define G_MAXLONG	LONG_MAX

The maximum value which can be held in a glong.


G_MAXULONG

#define G_MAXULONG	ULONG_MAX

The maximum value which can be held in a gulong.


G_MININT8

#define G_MININT8	((gint8)  0x80)

The minimum value which can be held in a gint8.

Since 2.4


G_MAXINT8

#define G_MAXINT8	((gint8)  0x7f)

The maximum value which can be held in a gint8.

Since 2.4


G_MAXUINT8

#define G_MAXUINT8	((guint8) 0xff)

The maximum value which can be held in a guint8.

Since 2.4


G_MININT16

#define G_MININT16	((gint16)  0x8000)

The minimum value which can be held in a gint16.

Since 2.4


G_MAXINT16

#define G_MAXINT16	((gint16)  0x7fff)

The maximum value which can be held in a gint16.

Since 2.4


G_MAXUINT16

#define G_MAXUINT16	((guint16) 0xffff)

The maximum value which can be held in a guint16.

Since 2.4


G_MININT32

#define G_MININT32	((gint32)  0x80000000)

The minimum value which can be held in a gint32.

Since 2.4


G_MAXINT32

#define G_MAXINT32	((gint32)  0x7fffffff)

The maximum value which can be held in a gint32.

Since 2.4


G_MAXUINT32

#define G_MAXUINT32	((guint32) 0xffffffff)

The maximum value which can be held in a guint32.

Since 2.4


G_MININT64

#define G_MININT64	((gint64) G_GINT64_CONSTANT(0x8000000000000000))

The minimum value which can be held in a gint64.


G_MAXINT64

#define G_MAXINT64	G_GINT64_CONSTANT(0x7fffffffffffffff)

The maximum value which can be held in a gint64.


G_MAXUINT64

#define G_MAXUINT64	G_GINT64_CONSTANT(0xffffffffffffffffU)

The maximum value which can be held in a guint64.


G_MAXSIZE

#define G_MAXSIZE	G_MAXUINT

The maximum value which can be held in a gsize.

Since 2.4


G_MINFLOAT

#define G_MINFLOAT	FLT_MIN

The minimum positive value which can be held in a gfloat.

If you are interested in the smallest value which can be held in a gfloat, use -G_MAX_FLOAT.


G_MAXFLOAT

#define G_MAXFLOAT	FLT_MAX

The maximum value which can be held in a gfloat.


G_MINDOUBLE

#define G_MINDOUBLE	DBL_MIN

The minimum positive value which can be held in a gdouble.

If you are interested in the smallest value which can be held in a gdouble, use -G_MAXDOUBLE.


G_MAXDOUBLE

#define G_MAXDOUBLE	DBL_MAX

The maximum value which can be held in a gdouble.