C
						
					
					
						
					
				
				
					Hatte die bool Variable vergessen anzufügen, hier ist die richtige Version: 
#include <allegro.h>
#include <string.h>
BITMAP *Bild1;
BITMAP *Bild2;
BITMAP *Bild3;
BITMAP *Bild4;
BITMAP *Bild5;
BITMAP *Bild6;
BITMAP *Bild7;
BITMAP *Bild8;
BITMAP *Bild9;
BITMAP* buffer;
int main()
{
 allegro_init();
   char Name[900];
 install_keyboard();
 install_mouse();
 set_color_depth(32);
 set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0);
 set_window_title("Zierpflanzenbau");
 show_os_cursor(MOUSE_CURSOR_ARROW);
 buffer=create_bitmap(640, 480);
 Bild1=load_bitmap("bmps//Background.bmp", NULL);
 Bild2=load_bitmap("bmps//begonie1.bmp", NULL);
 // bool Variable, die die Ausführung der Funktion prüft!
 bool fertig = false;
 int x = 1;
 int y = 1;
 while( !key[KEY_ESC])
 {
  draw_sprite(buffer, Bild1, 0,0);
  textprintf_ex(buffer, font, 330, 80, makecol(0, 0, 0), makecol(51, 204, 204), "Deutsch:");
  textprintf_ex(buffer, font, 330, 150, makecol(0, 0, 0), makecol(51, 204, 204), "Botanisch:");
  //////////////////////////////////////////////////////////////////////////////////////////////
  draw_sprite(buffer, Bild2, 34,27);  
  // Hier wird die Funktion aufgerufen und mit if abgefragt ob diese bereits  ausgeführt wurde, wenn nicht führe sie aus.
  if (!fertig)
    {
    Eingabe(font,"Bitte geben Sie Ihren Namen ein: ",0,0, makecol(0, 0, 255),  -1, Name);
    // Variable wird auf wahr gesetzt, sodass es nicht wieder ausgeführt wird beim erneuten Durchlauf der while Schleife  ;)
    done = true;
    }
  textprintf_ex(buffer, font, 405, 80, makecol(0, 0, 0), makecol(51, 204, 204), "Eisbegonie");
// Blit Funktion zum Zeichnen auf den Bildschirm
   blit(buffer, screen, 0, 0, 0, 0, SCREEN_W, SCREEN_H);
 }
 destroy_bitmap(Bild1);
 destroy_bitmap(Bild2);
 //destroy_bitmap(Bild3);
 //destroy_bitmap(Bild4);
 destroy_bitmap(buffer);
 return 0;
}
END_OF_MAIN();