Mam program, który zwraca pewien 64-bitowy result i mogę to wypisać:
std::cout << result << "\n";
Ale potrzebuję to wypisać w formacie binarnym. Liczby powinny się wyświetlać jako krzaki. W Pythonie na przykład dla liczb 16-bitowych robię to tak:
binary = struct.pack('H', result)
sys.stdout.buffer.write(binary)
Jak to zrobić w c++? Dodam, że nic nie rozumiem z tego co znalazłem na ten temat w Internecie, same przykłady są tak skomplikowane, że nie wiem o co w nich chodzi. Kiedyś ktoś pokazywał mi, że robił to zdaje się tak:
fwrite(buf, 1, sizeof(buf), stdout);
Ale wstawienie pod buf wyniku result nie działa, nie wiem też, czy ten kod ma w ogóle sens w tym kontekście. U niego buf[i] było chyba jakąś tablicą, nie wiem, czy nie tablicą złożoną z bitów danej liczby.
Ale cięcie liczby na pojedyncze bity i to w pętli wydaje się bardzo skomplikowane, tylko po to by wypisać ją binarnie. Choć nie zdziwiłbym się, gdyby nie było innego wyjścia.