こんにちは!
料金計算をしてそれをメッセージボックスで表示しているのですが、
3桁ごとにカンマを表示する方法がわかりません。
VBのFormat(lngRyokin, #,##0)のような処理があるのでしょうか?
ご存知の方がいらしたら、教えてください。
たぶん無いですね。適当に作ってみました。
void reverse(char* src,char* dst)
{
int len = strlen(src);
int cnt = 0;
src += len - 1;
while (cnt < len)
{
*dst = *src;
dst ++;
src --;
cnt ++;
}
dst[cnt] = '\0';
}
void convert(char* src,char* dst)
{
int len = strlen(src);
int cnt = 0;
int com = 0;
while (cnt < len)
{
if (com == 3)
{
*dst = ',';
dst ++;
com = 0;
}
*dst = *src;
dst ++;
src ++;
cnt ++;
com ++;
}
}
char src[16] = 123456789;
char dst[16] = ";
reverse(src,dst);
convert(dst,src);
reverse(src,dst);
↑この順番で使うとsrcの数列がカンマ区切りになってdstに入る(と思う)。
上の例だとdstの値は123,456,789になる(と思う)。
勘で作ったんであんまり自信無いけど。
この編集って どのくらいの整数部、小数部が必要ですか
カンマ、小数点、サイン、記号編集、通貨編集まで必要ですか
昔、C言語で作った巨大なものでよければ探してメールしますよ
かなり汚いソースですけど