Bitte um Hilfe: float, int etc. nach char umwandeln

Guten Abend, ich hänge bei meinem Projekt wieder am gleichen Problem: ich möchte aus numerischen Variablen einen Dateinamen in char umwandeln, um Dateien der SD-Card zu lesen. Ohne dies komme ich nicht weiter. Hier ein Beispiel :
Ich bitte sehr um Unterstüzung.
Rüdiger R.

    vtdir   // char
    vtstg  // float
    vth1   // int
    vth2   // int
    vtspg  // float
  

void  dateiname() {
  // {"&7+ 0,1ms H+0021m0030m 5,5V 000.0"}

  // char dateiname[5] // [4+1]
  strcpy (dateiname, "ABCD");
  Serial.print(vtdir);  //    z.Bsp. "+/-"
  Serial.print(vtstg); //    z.Bsp. "ms00"
  Serial.print(vth1);  //    z.Bsp. "100"
  Serial.print(vth2);  //    z.Bsp. "200"
  Serial.println(vtspg); // z.Bsp. "V44"}

Hallo
Wenn ich dich richtig verstanden habe geht es um Text und zahlen die einen Dateinamen ergeben sollten

Sprintf()

Du wirst mit Sicherheit keinen Dateinam,en aus einem Float ableiten wollen.
printf und seine Verwandten sind auf Arduino ohne float/double-Unterstützung gebaut.

Gruß Tommy

Falscher Titel. char ist etwas anderes als char

Ich möchte auch aus einer float-Variablen von zum Beispiel 1,2 (ms) den Dateinamen ‘ms12’ haben. Aus 4,6 (Volt) den Dateinamen ‘V46’ . Frage: Ist ‘Sprintf()’ eine Druckausgabe oder wird eine Variable erzeugt? Rüdiger R.

Greyhaired:
Ist 'Sprintf()' eine Druckausgabe oder wird eine Variable erzeugt?

Das ist eine Standard-Funktion die du nachschlagen kannst:
http://www.cplusplus.com/reference/cstdio/sprintf/

Geht wie gesagt auf AVRs normal nicht für float. Kann man aber auch durch editieren der config Dateien bekommen (auf Kosten der Flash Verbrauchs). Ansonsten gibt es dtostrf() für Gleitkommazahlen:
https://www.nongnu.org/avr-libc/user-manual/group__avr__stdlib.html#ga060c998e77fb5fc0d3168b3ce8771d42

Sprintf() füllt eine Zeichenkette

Es gibt gute c Tutorials im Netz die das beschreiben
Du hast gerade einen guten Link bekommen