关于数字分组 (123456789.99 => 123,456,789.99)
请问有没有效率高点的分组算法?
[解决办法]
很早的时候写过一个函数
char * dcomma(double d, int n){ int i, j, flag = 0; /* 整数部分 */ char *p, t[50]; static char s[50]; if( n > 8 ) n = 8; else if( n < 0 ) n = 0; if( n == 0 ) flag = 1; s[sizeof(s) - 1] = 0; sprintf(t, "%.*lf", n, d); p = t + strlen(t) - 1; for( i = sizeof(s) - 1, j = 0; p - t >= 0; p-- ) { if( flag == 1 ) j++; else if( *p == '.' ) flag = 1; s[i--] = *p; if( j == 3 && p - t && *(p-1) != '-' ) { j = 0; s[i--] = ','; } } return(s + i + 1);}