|
@ -152,7 +152,10 @@ |
|
|
#define DECIMAL_SIGNED(a) (DECIMAL(a) || (a) == '-' || (a) == '+') |
|
|
#define DECIMAL_SIGNED(a) (DECIMAL(a) || (a) == '-' || (a) == '+') |
|
|
#define COUNT(a) (sizeof(a)/sizeof(*a)) |
|
|
#define COUNT(a) (sizeof(a)/sizeof(*a)) |
|
|
#define ZERO(a) memset(a,0,sizeof(a)) |
|
|
#define ZERO(a) memset(a,0,sizeof(a)) |
|
|
#define COPY(a,b) memcpy(a,b,MIN(sizeof(a),sizeof(b))) |
|
|
#define COPY(a,b) do{ \ |
|
|
|
|
|
static_assert(sizeof(a[0]) == sizeof(b[0]), "COPY: '" STRINGIFY(a) "' and '" STRINGIFY(b) "' types (sizes) don't match!"); \ |
|
|
|
|
|
memcpy(&a[0],&b[0],MIN(sizeof(a),sizeof(b))); \ |
|
|
|
|
|
}while(0) |
|
|
|
|
|
|
|
|
// Macros for initializing arrays
|
|
|
// Macros for initializing arrays
|
|
|
#define ARRAY_6(v1, v2, v3, v4, v5, v6, ...) { v1, v2, v3, v4, v5, v6 } |
|
|
#define ARRAY_6(v1, v2, v3, v4, v5, v6, ...) { v1, v2, v3, v4, v5, v6 } |
|
|