Forum: PC-Programmierung sprintf kombinieren, GCC


von gcc (Gast)


Lesenswert?

Wie schreibt man sowas richtig? ""%"+fill+length+"i"" ?
1
void lcd_puti(uint16_t value, uint8_t length, uint8_t fill)
2
{
3
    sprintf(buffer, "%"+fill+length+"i", value);
4
//--
5
}

: Verschoben durch Admin
von Max H. (hartl192)


Lesenswert?

gcc schrieb:
> Wie schreibt man sowas richtig? ""%"+fill+length+"i"" ?
Wenn length und fill ASCII codiert übergeben werden:
1
void lcd_puti(uint16_t value, uint8_t length, uint8_t fill)
2
{  
3
  char format_string[] = "%--i";
4
  format_string[1] = fill;
5
  format_string[2] = length;
6
7
  sprintf(buffer, format_string, value);
8
}
Wenn binär musst du sie noch mit itoa oder sprintf in ASCII umwandeln.

: Bearbeitet durch User
von Dirk B. (dirkb2)


Lesenswert?

Was genau meinst du mit fill und length?

Schau dir mal den * Modifier bei width an:
http://www.cplusplus.com/reference/cstdio/printf/

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.