#include<iostream>
#include<string>
#include<sstream>
using namespace std;
string itos(int i) // convert int to string
{
stringstream s;
s << i;
return s.str();
}
int main()
{
int i = 127;
string ss = itos(i);
const char* p = ss.c_str();
cout << ss << " " << p << "\n";
}
당연히 이 방법은 <<을 사용하여 출력할 수 있는 타입들을 string으로 변경할 때에 사용됩니다. stringstream에 대한 설명은, The C++ Programming Language의 21.5.3을 참고하세요
(Userdefined 타입을 string으로 캐스팅할 때에도 유용함)
원문
How do I convert an integer to a string?
The simplest way is to use a stringstream:
#include<iostream>
#include<string>
#include<sstream>
using namespace std;
string itos(int i) // convert int to string
{
stringstream s;
s << i;
return s.str();
}
int main()
{
int i = 127;
string ss = itos(i);
const char* p = ss.c_str();
cout << ss << " " << p << "\n";
}
Naturally, this technique works for converting any type that you can output using << to a string. For a description of string streams, see 21.5.3 of The C++ Programming Language.
'번역 > Bjarne Stroustrup's C++ Style and Technique FAQ' 카테고리의 다른 글
Why is "this" not a reference? (0) | 2018.05.10 |
---|---|
How are C++ objects laid out in memory? (0) | 2018.05.09 |
How do I read a string from input? (0) | 2018.03.14 |
Can you recommend a coding standard? (0) | 2018.01.30 |
How do I write this very simple program? (3) | 2017.08.12 |
댓글