/
githubmirror
/
strace
Обзор
Документация
Войти
/
githubmirror
/
strace
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
v5.13
src/print_utils.h
39 строк
850 B
Dmitry V. Levin
Move source files into src subdirectory
03 фев 2021, 11:00
03 фев 2021, 11:00
ecb3ed7
Код
Авторство
О чём код?
#ifndef STRACE_PRINT_UTILS_H # define STRACE_PRINT_UTILS_H # include <inttypes.h> /* Hexadecimal output utils */ static const char hex_chars[16] = "0123456789abcdef"; /** * Character array representing hexadecimal encoding of a character value. * * @param b_ Byte to provide representation for. */ # define BYTE_HEX_CHARS(b_) \ hex_chars[((uint8_t) (b_)) >> 4], hex_chars[((uint8_t) (b_)) & 0xf] # define BYTE_HEX_CHARS_PRINTF(b_) \ '\\', 'x', BYTE_HEX_CHARS(b_) # define BYTE_HEX_CHARS_PRINTF_QUOTED(b_) \ '\'', BYTE_HEX_CHARS_PRINTF(b_), '\'' static inline char * sprint_byte_hex(char *buf, uint8_t val) { *buf++ = hex_chars[val >> 4]; *buf++ = hex_chars[val & 0xf]; return buf; } /* Character classification utils */ static inline bool is_print(uint8_t c) { return (c >= ' ') && (c < 0x7f); } #endif /* STRACE_PRINT_UTILS_H */