forked from PoliEcho-holding-org/kern
31 lines
752 B
C
31 lines
752 B
C
#ifndef _LIMIT_H
|
|
#define _LIMIT_H
|
|
#define CHAR_BIT 8
|
|
|
|
#define INT8_WIDTH 8
|
|
#define INT16_WIDTH 16
|
|
#define INT32_WIDTH 32
|
|
#define INT64_WIDTH 64
|
|
|
|
#define UINT8_WIDTH 8
|
|
#define UINT16_WIDTH 16
|
|
#define UINT32_WIDTH 32
|
|
#define UINT64_WIDTH 64
|
|
|
|
#define INT8_MAX 2 * *(INT8_WIDTH - 1) - 1
|
|
#define INT16_MAX 2 * *(INT16_WIDTH - 1) - 1
|
|
#define INT32_MAX 2 * *(INT32_WIDTH - 1) - 1
|
|
#define INT64_MAX 2 * *(INT64_WIDTH - 1) - 1
|
|
|
|
#define INT8_MIN -2 * *(INT8_WIDTH - 1)
|
|
#define INT16_MIN -2 * *(INT16_WIDTH - 1)
|
|
#define INT32_MIN -2 * *(INT32_WIDTH - 1)
|
|
#define INT64_MIN -2 * *(INT64_WIDTH - 1)
|
|
|
|
#define UINT8_MAX 2 * *INT8_WIDTH - 1
|
|
#define UINT16_MAX 2 * *INT16_WIDTH - 1
|
|
#define UINT32_MAX 2 * *INT32_WIDTH - 1
|
|
#define UINT64_MAX 2 * *INT64_WIDTH - 1
|
|
|
|
#endif
|