tstring 클래스는 std::basic_string<> 탬플릿 클리스를 상속받은 클래스이다.
지금까지 std::string이든 std::wstring이든 사용하면서 불편한 점이 바로 CString에는 있는 format()함수가 없다는 것이다.
이를 위해 wsprintf를 사용한다든지 했을텐데 필자 역시 불편하여 이를 위한 유틸리티 함수를 몇 개 만들어본다. 기본 개념은 _snprintf() 라는 함수의 첫번째와 두번째 인자에 NULL과 0을 넣으면 실제 완성된 문자열의 길이를 리턴해 준다.
이 길이를 이용해서 버퍼를 할당하고 완전한 _snprintf() 함수를 호출하여 마무리 한다.
#include "tstring.h" ... ... void CMFCApplication1Dlg::OnBnClickedButton1() { tstring a; std::format(a, _T("aaa : %.3f"), 0.2232487); std::append_format(a, _T("==> abc : %s"), _T("mjp") ); MessageBox(a.c_str()); }
결과는 다음과 같다.
소스파일은 첨부파일에서 다운받으세요.
'I ♥ Programming' 카테고리의 다른 글
[본문 스크랩] VC++에서 윈도우 버전 정확하게 얻어오는 새로운 방법 (0) | 2014.11.14 |
---|---|
[본문 스크랩] Visual Studio 2012/2013에서의 매크로 구현 (0) | 2014.10.30 |
현재 웹페이지에 있는 이메일 주소를 모두 가져오는 자바스크립트 소스(함수) (0) | 2014.07.05 |
CScrollView의 Scroll Position 값이 32767을 넘어서 이상한 동작 할때 조치 방법 (0) | 2014.06.19 |
영상처리 할 때 필요한 double형 size, point, rect 클래스.. (0) | 2014.06.17 |