stl string에 sprintf 역할 하는게 없나요?
숫자를 문자로 바꾸고 싶습니다.
itoa() 같은거 쓰기 귀찮아서 그렇거든요.
MFC CString에도 있는 Format() 같은게 없는건가요?
표준 c++ 답게 << 연산자가 있을줄 알았는데 없군요.
어떻게 사용하시는지 알려주세요.
ANSI C++의 stringstream은 문자열 스트림 객체입니다. ANSI C의 sprintf 와 sscanf와 비슷한 기능을 한다고 생각하면 됩니다. (당근 C보다 훨씬 세련된 방법이지요.)
참고로 단지 문자열과 숫자간의 변환 기능만 필요하시다면, Boost 라이브러리(http//www.boost.org)의 lexical_cast (http//www.boost.org/libs/conversion/lexical_cast.htm) 를 쓰시는 것을 권합니다. stringstream 을 한번 더 캡슐화해서 좀 더 편리하게 만든겁니다.
이에 관해서 제가 전에 썼던 글이 있습니다. 참고하세요. http//www.borlandforum.com/impboard/impboard.dll?action=read&db=cpp_tip&no=37
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
stringstream 을 쓰면 됩니다.
ANSI C++의 stringstream은 문자열 스트림 객체입니다.
ANSI C의 sprintf 와 sscanf와 비슷한 기능을 한다고 생각하면 됩니다.
(당근 C보다 훨씬 세련된 방법이지요.)
참고로 단지 문자열과 숫자간의 변환 기능만 필요하시다면,
Boost 라이브러리(http//www.boost.org)의 lexical_cast
(http//www.boost.org/libs/conversion/lexical_cast.htm)
를 쓰시는 것을 권합니다.
stringstream 을 한번 더 캡슐화해서 좀 더 편리하게 만든겁니다.
이에 관해서 제가 전에 썼던 글이 있습니다. 참고하세요.
http//www.borlandforum.com/impboard/impboard.dll?action=read&db=cpp_tip&no=37
댓글 달기