|
|
|
|
|
|
|
|
#define strspn_P(str, chrs) strspn((str), (chrs)) |
|
|
#define strspn_P(str, chrs) strspn((str), (chrs)) |
|
|
#define strstr_P(a, b) strstr((a), (b)) |
|
|
#define strstr_P(a, b) strstr((a), (b)) |
|
|
#define sprintf_P(s, ...) sprintf((s), __VA_ARGS__) |
|
|
#define sprintf_P(s, ...) sprintf((s), __VA_ARGS__) |
|
|
#define vfprintf_P(s, ...) vfprintf((s), __VA_ARGS__) |
|
|
|
|
|
#define printf_P(...) printf(__VA_ARGS__) |
|
|
|
|
|
#define snprintf_P(s, n, ...) ((s), (n), __VA_ARGS__) |
|
|
|
|
|
#define vsprintf_P(s, ...) ((s),__VA_ARGS__) |
|
|
|
|
|
#define vsnprintf_P(s, n, ...) ((s), (n),__VA_ARGS__) |
|
|
|
|
|
#define fprintf_P(s, ...) ((s), __VA_ARGS__) |
|
|
|
|
|
|
|
|
#define vfprintf_P(fp, s, ...) vfprintf((fp), (s), __VA_ARGS__) |
|
|
|
|
|
#define printf_P(f, ...) printf((f), __VA_ARGS__) |
|
|
|
|
|
#define snprintf_P(s, n, f, ...) snprintf((s), (n), (f), __VA_ARGS__) |
|
|
|
|
|
#define vsprintf_P(s, f, ...) vsprintf((s), (f), __VA_ARGS__) |
|
|
|
|
|
#define vsnprintf_P(s, n, f, ...) vsnprintf((s), (n), (f), __VA_ARGS__) |
|
|
|
|
|
#define fprintf_P(fp, f, ...) fprintf((fp), (f), __VA_ARGS__) |
|
|
|
|
|
|
|
|
#define pgm_read_byte(addr) (*(const unsigned char *)(addr)) |
|
|
#define pgm_read_byte(addr) (*(const unsigned char *)(addr)) |
|
|
#define pgm_read_word(addr) (*(const unsigned short *)(addr)) |
|
|
#define pgm_read_word(addr) (*(const unsigned short *)(addr)) |