프로그래밍/c++2013. 6. 18. 12:25

ANSI C++도 Java 처럼 천단위 콤마 찍기를 지원합니다.
표준 라이브러리의 locale 클래스를 사용하면 됩니다.

 

std::string sep_thousands(double f)
{
    using namespace std;

    const char *locale_name =
    #ifdef WINDOWS
    "korean";
    #endif
   
    ostringstream oss;
    oss.imbue(locale(locale_name));
    oss << f;
    return oss.str();
}


로케일을 한국어나 영어로 설정하면 자동으로 천단위 컴마 찍기가 됩니다.
(소숫점 이하는 찍히지 않습니다.)
만약 독일어로 설정하면 컴마(,) 대신 피리어드(.)가 찍힙니다.

 

출처 : http://kldp.org/node/38269



Posted by GaePein
프로그래밍/c++2013. 5. 29. 17:33

참조 : http://www.delorie.com/gnu/docs/gcc/cpp_21.html

 

요약 :

// 현재 실행된 파일 이름 출력시

printf("fileName : %s\n", __FILE__);

 

// 현재 실행된 라인넘버 출력시

printf("LineNumber : %d\n", __LINE__);

 

위와 같은 양식으로 C 표준 예약 매크로를 이용하여 로그를 남기거나 할수있다.

더 다양한 표준 예약 매크로는 참조링크를 참조.



Posted by GaePein