rabbit-dev

現役スマフォプログラマーが適当にプログラム関係の記事を放り込むブログ

数字3桁ごとに「,」を入れる方法

ゲームでお金を表示するときに3桁ごとに「,」を入れて表示することが多いのですが、

その実装方法を載せておきます。

 

コード

const char * getNumComma(double num){
    String * str = String::create("");
    do{
        int add = (int)fmod(num,1000);
        num = num / 1000;
        
        if( num >= 1  ){
            str = String::createWithFormat(",%03d%s", add, str->getCString());
        }
        else{
            str = String::createWithFormat("%d%s", add, str->getCString());
        }
    }while( num >= 1 );
    
    return str->getCString();
}

 

double num = 12345;

const char * msg;

msg = getNumComma(num);

mLabel->setString(msg);

 

上記のコードで「12,345」と表示されます!

ぜひご利用あれ