Versuchen:
int x = 5;
std::cout.write(reinterpret_cast<const char*>(&x),sizeof(x));
Hinweis: Das Schriftfelter Daten im Binärformat ist nicht tragbar.
Wenn Sie es auf einer alternativen Maschine lesen möchten, müssen Sie entweder die gleiche Architektur haben oder Sie müssen das Format standardisieren und sicherstellen, dass alle Maschinen das Standardformat verwenden.
Wenn Sie binäre der einfachste Weg, schreiben möchten, das Format zu standardisieren, Daten zu Netzwerk-Format zu konvertieren (es gibt eine Reihe von Funktionen für die htonl() < -> ntohl() usw.)
int x = 5;
u_long transport = htonl(x);
std::cout.write(reinterpret_cast<const char*>(&transport), sizeof(u_long));
Aber das transportierbarste Format ist, nur in Text zu konvertieren.
std::cout << x;
Was macht es? Er postete, was er bisher versucht hatte und warum sein Code nicht funktionierte und stellte eine klare Frage. –
Das ist nicht gut mit 'Cout', weil Sie nicht kontrollieren können, wie es geöffnet ist. Wenn Sie eine binäre Ausgabe ausführen möchten, öffnen Sie Ihren eigenen Stream und fügen Sie das Flag "ios_base :: binary" in Ihr Argument "openmmode" ein. –