Fungsi Thousand Separator Arduino
Cara penggunaan:
void setup()
{ 
  Serial.begin(19200);
}

void loop()
{
  char buf[32];
  int saldo=123456;
  Serial.print("Saldo: "+String(ribuan(saldo,buf,10)));
}

char *pemisah_ribuan(unsigned long nilai, char *s, unsigned radix, int pos),...dst

Function:


char *pemisah_ribuan(unsigned long nilai, char *s, unsigned radix, int pos)
{
  int c;
  if (nilai >= radix)
  s = pemisah_ribuan(nilai / radix, s, radix, pos+1);
  c = nilai % radix;
  c += (c < 10 ? '0' : 'a' - 10);
  *s++ = c;
  if (pos % 3 == 0) *s++ = ',';
  return s;
}

char *ribuan(long nilai, char *s, int radix)
{
  if (radix < 2 || radix > 36) 
  {
    s[0] = 0;
  } 
  else 
  {
    char *p = s;
    if (radix == 10 && nilai < 0) 
    {
      nilai = -nilai;
      *p++ = '-';
    }
    p = pemisah_ribuan(nilai, p, radix, 0) - 1;
    *p = 0;
  }
  return s;
}