标准宏定义了一些常用的宏,分为两类,函数及数据类型。
其含义见下注释。
函数
#define G_IS_DIR_SEPARATOR() // 是否为目录分隔符,Unix为'/',Windows为'/'或'\'
#define MIN() // 返回二者之中最小值
#define MAX() // 返回之中最大值
#define ABS() // 返回绝对值
#define CLAMP() // 区间限定函数,若在区间外,则返回离区间最近的值
#define G_STRUCT_MEMBER() // 根据给定偏移量返回结构体成员
#define G_STRUCT_MEMBER_P() // 根据给定偏移量返回结构体未定义类型的指针
#define G_STRUCT_OFFSET() // 根据结构体成员返回其偏移量
#define G_N_ELEMENTS() // 返回数组中元素的个数
数据类型
#define G_OS_WIN32 // Win32平台
#define G_OS_UNIX // Unix平台
#define G_DIR_SEPARATOR // 目录分隔符,Unix为'/',Windows为'/'或'\'
#define G_DIR_SEPARATOR_S // 将目录分隔符视为字符串,即"/"或"\"
#define G_SEARCHPATH_SEPARATOR // 目录搜索时的分隔符,Unix一般为':',Windows一般为';'
#define G_SEARCHPATH_SEPARATOR_S // 将目录搜索时分隔符视作字符串,即":"或";"
#define TRUE // 真
#define FALSE // 假
#define NULL // 空
#define G_MEM_ALIGN // 字节对齐
#define G_CONST_RETURN // (已废弃)