2010-12-04 6 views
1

私はC++のintからchar(またはstring)への変換が必要です。intからC++のcharsに変換するにはどうすればよいですか?

+2

(http://www.cplusplus.com/reference/clibrary/cstdlib/itoa/)itoaはに探してみては?またはstringstreams? – GWW

+2

私はビールが欲しいです。真剣に、あなたが持っているコードとその外観を見せてください。データ型やフォーマットをキャストするかどうかはわかりません。 – Eiko

答えて

3

char*に任意の基本的なデータ型を変換する最も簡単な方法は、sprintfのである:

char mystring[MAX_SIZE]; 
sprintf(mystring, "%d", my_int); 
2
#include <sstream> 

ostringstream intStream; 
int myInt(123456); 

intStream << myInt; 

string myIntString(intStream.str()); 
3

まあ、それは特別に複雑ではありません。

#include <sstream> 

    std::string cnvt(int x) 
    { 
     std::ostringstream cnvt; 

     cnvt << x; 

     return cnvt.str(); 
    } 

・ホープ、このことができます。

+0

[私のソリューション](http://stackoverflow.com/questions/4355315/how-do-i-convert-from-int-to-chars-in-c/4355328#4355328)よりはるかに優れています。さらに多くのC++ - y –

+0

はい、それはもっとC++ですが、私は正直言って私が自分のものより好きだと言っています。 :-D – Baltasarq

8

別に直接stringstreamを使用してから、あなたもboost::lexical_castを使用することができます。

std::string x = boost::lexical_cast<std::string>(42); 
+0

私は最も明確なC++の解決策があると+1しますが、私は票が足りません:)。 – Kos

+0

+5 for lexical_cast'; '42 'の場合は+ 5です。 – ClosureCowboy