Kennt jemand eine gute sichere Möglichkeit, die Ausgabe einer printf-style-Funktion auf eine Zeichenfolge umzuleiten? Die offensichtlichen Wege führen zu Pufferüberläufen.Der beste Weg, um sicher auf eine Zeichenkette zu drucken?
Etwas wie:
string s;
output.beginRedirect(s); // redirect output to s
... output.print("%s%d", foo, bar);
output.endRedirect();
ich glaube, das Problem ist das gleiche wie die Frage, „wie viele Zeichen produzieren gedruckt werden?“ Ideen?
Nicht verfügbar auf anderen Standards konforme Implementierung, so yuck. – Bklyn
Der einzige Unterschied besteht darin, dass der "sichere" CRT selbst abstürzt, wenn er bestimmte undefinierte Verhaltensweisen erkennt. Das umgeht nicht das Problem, dem er begegnet. –