005
16.04.2004, 12:50 Uhr
DerSchwarzeSchlumpf
|
Zitat: |
Windalf postete eventuell hilft dir das und das hier weiter... ist zwar nicht ganz genau deine aufgaben stellung aber gibt dir vielleicht schon mal einen ansatz
|
hi
danke erstmal (: aber nee das ganze labyrinth selbst funktioniert ohne probleme (erstellen, ausgang setzen, mauer setzen, ausgabeformat ändern usw usw) *gg*
das problem ist: die befehlseingabe für das "labyrinth setzen" muss so ausschaun:
C++: |
d // für definiere labyrinth, dann enter 10 5 //2 uint32 werte (wird auch überprüft ob eingabe negativ ist und erst nachher in ein uint32 umgewandelt *g*), geben an wie groß das labyrinth sein soll, dann wieder enter
//so und jetzt kommt das problem. der benutzer muss jetzt 5x (soviele reihen gibt es) jeh 10 x eingeben, ob es eine mauer, startpunkt, zielpunkt oder freies feld gibt. S = Startpunkt, Z=ZIelpunkt, "Leerzeichen" = freies feld, o = Mauer.
//Das sieht dann im detail so aus
oooooooooS //10 Elemente, dann enter o o //10 Elemente, dann enter ooo oooo // 10 Elemente, dann enter ooo oooo //10 Elemente dann enter oooZ ooooo // 10 Elemente, dann enter
// das einlesen hab ich bis jetzt mit cin.getline() gemacht. // das Problem ist aber! ich habe jetzt pro reihe für genau 11 Zeichen (10 //Elemente + '\0' char) speicher reserviert. Nur was ist wenn der DAU jetzt //stattdessen 15 Zeichen eingeben will? Klar => er stürzt ma ab *g* und //daher bräuchte ich da irgendwie eine Beschränkung wie mand as umgehen kann
|
hat da jemand eine idee wie das funktioniert dass ab der 10. eingabe ganz einfach keine zusätzliche eingabe mehr möglich ist? |