itoa ersetzen std::to_string, wie

Wie kann ich diese ersetzen

    itoa(i, buf, 10);
    key1.append(buf);
    key2.append(buf);
    key3.append(buf);

mit std::to_string

itoa gab mir einen Fehler, es wurde nicht deklariert in Umfang, dass Ihr nicht Teil der standard -

Hörte ich, die ich verwenden kann std::to_string zu machen, eine andere version wie mache ich das?

  • Hier ist ein Verweis. Es beinhaltet sogar ein Beispiel.
  • Was genau ist das problem? Nicht std::to_string(i) es lösen? Das problem ist, dass dies schafft eine std::string, aber Sie brauchen eine char *?
  • dies wäre nur möglich, mit C++11 richtig?
  • Ja, std::to_string existiert nur in C++11. Wenn Sie auf der Suche für eine Lösung, die mit C++98/03, Sie können nicht std::to_string. boost::lexical_cast wird oft empfohlen als alternative (aber erfordert, dass Sie die relevanten Header aus der Boost-library). Und natürlich std::ostringstream wie bereits in den Antworten ist eine weitere alternative.
InformationsquelleAutor soniccool | 2012-12-10
Schreibe einen Kommentar