The CPPReference page on std::setbase sagt:Warum wechselt std :: setbase (2) nicht zur binären Ausgabe?
Werte von anderer Base als 8, 10 oder 16 zurückgesetzt FIELD auf Null, das Ausgangssignal und das Präfix abhängigen Eingang dezimal entspricht.
Wie kommt es?
Gibt es einen bestimmten Grund, warum nur diese Basen unterstützt werden? Es scheint trivial zu sein, zumindest etwas bis zu 16 zu unterstützen (eigentlich bis zu 36: 0-9 und dann a-z), ohne irgendwelche schwierigen Entscheidungen treffen zu müssen. Insbesondere ist 2 eine beliebte Basis, ich würde denken, dass Interesse in std::setbase(2)
(und eine entsprechende std::binary
) Interesse haben sollte.
Ich kann natürlich meine eigenen Bits drucken, aber es wäre schön für meine Ostream gewesen, es zu tun.
die nette Weise, binäre zu drucken, ist http://en.cppreference.com/w/cpp/utility/bitset/operator_ltltgtgt2 – Cubbi
@Cubbi: Das ist nett, aber es erfordert den Code, der zum Strom druckt, um bewusst zu sein die Notwendigkeit, in Binärform zu drucken. Ich möchte, dass _stream_ in binär konvertiert wird. – einpoklum