Integer Variable in Datentyp char umwandeln?

Hallo Uwe,

danke für die Rückmeldung. Ich habe mit dem Ansatz nun etwas rumgebastelt und bin an folgender Stelle:

das ist mein Probecode der 4 Zufällige Zahlen erzeugt und sie nacheinander in ein Array speichert. Wenn man sich den Vorgang im Serial Monitor anschaut bekommt man die 4 Zufallszahlen dargestellt aber nicht danach den gesammten Arrayinhalt. Ich bin in der Array Materie noch nicht tief drin habe aber eine Vermutung warum das nicht geht: Das Array was mir das Kennwort des Türschlosses speichert sieht wie folgt aus:

char TuerCode[5] = "9200";

Das Array was die Zufallszahlen aufnehmen soll, sieht so aus:

char Zufallszahl[5];

Jetzt fangen meine Gedankenprobleme an. Und zwar kann ich doch in einem Array[5] eine Zahl mit 6 Stellen speichern oder ? Warum muss mein Array was mein TuerCode speichert [5] haben? Es speichert doch nur eine Zahl zwischen 0000 und 9999 ? Denn die Zufallszahl ist ja auch nur vierstellig. Wenn ich aber das TuerCode Array auf zum Beispiel [4] oder kleiner setze bekomme ich eine Fehlermeldung das das Array zu klein für den Inhalt ist. Warum?? Ok egal ich habe also bei meinem TuerCode[5] Array wie unten im Sketch zu sehen ist den Arrayinhalt [0] und [1] mit nullen beschrieben, da ich ja nur eine vierstellige Zahl brauche. Das ganze funktioniert einfach nicht und ich finde nicht den richtigen Anhaltspunkt warum und wie ich / was ändern muss.

Das hier ist der Code:

#include <SoftwareSerial.h>

int eins = 0;
int zwei = 0;
int drei = 0;
int vier = 0;

char TuerCode[5];
int durchlauf = 0;

void setup(){
Serial.begin(9600);
//value = random(47,58);
}

void loop(){

while(durchlauf == 0){
TuerCode[0] = 0;
TuerCode[1] = 0;
// erste Zahl generieren und laden
eins = random(0,9);
Serial.print("Erste Zahl ist: ");
Serial.println(eins);
TuerCode[2] = eins;
delay(1000);
// zweite Zahl generieren und laden
zwei = random(0,9);
Serial.print("Zweite Zahl ist: ");
Serial.println(zwei);
TuerCode[3] = zwei;
delay(1000);
// dritte Zahl generieren und laden
drei = random(0,9);
Serial.print("Dritte Zahl ist: ");
Serial.println(drei);
TuerCode[4] = drei;
delay(1000);
// vierte Zahl generieren und laden
vier = random(0,9);
Serial.print("Vierte Zahl ist: ");
Serial.println(vier);
TuerCode[5] = vier;
delay(1000);

durchlauf = 1;
}

Serial.println("Der Zufallscode ist: ");
Serial.println(Array);
}

Gruß,
Tobi