참고 : https://fmt.dev/latest/syntax.html
fmt::print("Hello, {name}! The answer is {number}. Goodbye, {name}.\n", fmt::arg("name", "World"), fmt::arg("number", 42));
//Hello, World! The answer is 42. Goodbye, World.
using namespace fmt::literals;
fmt::print("Hello, {name}! The answer is {number}. Goodbye, {name}.\n", "name"_a = "World", "number"_a = 42);
//Hello, World! The answer is 42. Goodbye, World.
// 소숫점 3자리까지 반올림
float fNum = 123.456789f;
fmt::print("{:.3f}\n", fNum);
//123.457
// +기호
fmt::print("{:+.3f}\n", fNum);
//+123.457
fmt::print("{:-.3f}\n", fNum);
//123.457
// 기호 자리 비워놓기
fmt::print("{: .3f}\n", fNum);
// 123.457
// 전체 자리수 및 소숫점 자리수 지정
double dNum = 123.444789;
fmt::print("{{{:10.3f}}}\n", dNum);
//{ 123.445}
double dNum2 = 123.444444;
fmt::print("{{{:010.3f}}}\n", dNum2);
//{000123.444}
// 인덱스 지정
fmt::print("{0:.3f} {1} {0}\n", fNum, dNum);
//123.457 123.444789 123.45679
// 전체 자리수 지정
int iNum = 123456789;
fmt::print("({:10d})\n", iNum);
//( 123456789)
fmt::print("({:010d})\n", iNum);
//(0123456789)
// 왼쪽 정렬
fmt::print("({:<12d})\n", iNum);
//(123456789 )
// 오른쪽 정렬
fmt::print("({:>12d})\n", iNum);
//( 123456789)
// 가운데 정렬(문자 A로 패딩)
fmt::print("({:A^12d})\n", iNum);
//(A123456789AA)
// 2진수 표시
fmt::print("{:b}\n", iNum);
//111010110111100110100010101
fmt::print("{:#b}\n", iNum);
//0b111010110111100110100010101
// 8진수 표시
fmt::print("{:o}\n", iNum);
//726746425
fmt::print("{:#o}\n", iNum);
//0726746425
// 16진수 표시
fmt::print("{:x}\n", iNum);
//75bcd15
fmt::print("{:#x}\n", iNum);
//0x75bcd15
// line
fmt::print(FMT_STRING("{:-^12}\n{: ^12}\n{0:-^12}\n"), "", "Hello!");
//Syntax Error!!!
fmt::print(FMT_STRING("{0:-^12}\n{1: ^12}\n{0:-^12}\n"), "", "Hello!");
//------------
// Hello!
//------------
std::vector<double> v{ 1.2, 5.6, 7.8 };
fmt::print("{}\n", v);
//[1.2, 5.6, 7.8]
std::map<int, double> m{ {1, 1.1}, {2, 2.2}, {3, 3.3} };
fmt::print("{}\n", m);
//{1: 1.1, 2: 2.2, 3: 3.3}
// DateTime format
auto t = tm();
t.tm_year = 2022 - 1900;
t.tm_mon = 8 - 1;
t.tm_mday = 4;
t.tm_hour = 12;
t.tm_min = 15;
t.tm_sec = 58;
fmt::print("{:%Y-%m-%d %H:%M:%S}\n", t);
//2022-08-04 12:15:58
'IT_컴퓨터_코딩_개발' 카테고리의 다른 글
Notepad++을 활용한 텍스트 변환: 각 라인에 특정 문자열 추가하기 (0) | 2024.01.04 |
---|---|
svn revert -R . (0) | 2022.10.28 |
[아이폰 iOS 10] 답답한 터치 반응 빠르게 하는 방법 (1) | 2016.11.03 |
How to install GoLang with wget on Ubuntu(Linux) (1) | 2016.10.19 |
[GoLang] gorilla securecookie example (0) | 2016.10.17 |