diff --git a/lab04/lab04.cpp b/lab04/lab04.cpp index 86de7aa..99a3276 100644 --- a/lab04/lab04.cpp +++ b/lab04/lab04.cpp @@ -39,9 +39,30 @@ void test_print_in_hex() { print_in_hex(0xff); cout << "\n"; } +const uint8_t* as_bytes(const void* data) { + return reinterpret_cast(data); +} + +void print_in_hex(const void* data, size_t size) { + const uint8_t* bytes = as_bytes(data); + for (size_t i = 0; i < size; i++) { + print_in_hex(bytes[i]); + cout << ((i + 1) % 16 == 0 ? '\n' : ' '); + } +} + +void test_print_array_in_hex() { + uint32_t u32 = 0x42; + cout << "u32 bytes: "; + print_in_hex(&u32, sizeof(u32)); + cout << "\n"; +} + + int main() { test_nibble_to_hex(); test_nibbles(); test_print_in_hex(); + test_print_array_in_hex(); return 0; }