/ kernel / include / types.h
types.h
 1  #ifndef TYPES_H
 2  #define TYPES_H
 3  
 4  // Basic types
 5  typedef unsigned char uint8_t;
 6  typedef unsigned short uint16_t;
 7  typedef unsigned int uint32_t;
 8  typedef unsigned long long uint64_t;
 9  
10  typedef signed char int8_t;
11  typedef signed short int16_t;
12  typedef signed int int32_t;
13  typedef signed long long int64_t;
14  
15  typedef unsigned int size_t;
16  typedef int ssize_t;
17  typedef unsigned int uintptr_t;
18  
19  // Boolean
20  typedef unsigned char bool;
21  #define true 1
22  #define false 0
23  
24  #define NULL ((void*)0)
25  
26  // offsetof macro
27  #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
28  
29  #endif // TYPES_H