Skip to content

Latest commit

 

History

History
29 lines (22 loc) · 1.1 KB

004-cpp14-core-digit-separator.md

File metadata and controls

29 lines (22 loc) · 1.1 KB

数値区切り文字

数値区切り文字は、整数リテラルと浮動小数点数リテラルの数値をシングルクオート文字で区切ることができる機能だ。区切り桁は何桁でもよい。

int main()
{
    int x1 = 123'456'789 ;
    int x2 = 1'2'3'4'5'6'7'8'9 ; 
    int x3 = 1'2345'6789 ;
    int x4 = 1'23'456'789 ;

    double x5 = 3.14159'26535'89793 ;
}

大きな数値を扱うとき、ソースファイルに1000000001000000000と書かれていた場合、どちらが大きいのか人間の目にはわかりにくい。人間が読んでわかりにくいコードは間違いの元だ。数値区切りを使うと、100'000'0001'000'000'000のように書くことができる。これはわかりやすい。

他には、1バイト単位で見やすいように区切ることもできる。

int main()
{
    unsigned int x1 = 0xde'ad'be'ef ;
    unsigned int x2 = 0b11011110'10101101'10111110'11101111 ;
}

数値区切りはソースファイルを人間が読みやすくするための機能で、数値に影響を与えない。