führende nullen in einer deque entfernen
-
Hallo
ich möchte in meinem programm eine funktion, um alle führenden nullen aus einer deque zu entfernen, schreiben. diese enthält bei mir nur int-werte (genauer gesagt nur einzelne ziffern).
mein intuitiver ansatz liefert mir folgende funktion:deque<int> nullenentfernen (deque<int> a) { while (a.front()==0) a.pop_front(); //solange nullen am anfang sind, rausschmeißen if (a.empty()) a.push_front(0); //falls a nur aus nullen bestand, wurde eine zuviel entfernt return a; }soweit funktioniert diese funktion auch wie gewünscht, nur bei wenn die eingabe aus mehreren nullen (und sonst nichts) besteht, stürzt das programm ab. komischerweise funktionierts aber für a=0. nur für a=00000 oder so nicht.
Process returned -1073741819 (0xC0000005)
diese fehlermeldung erhalte ich immer.
hat einer von euch eine ahnung wieso das für genau diesen fall nicht funktioniert? ich bin mittlerweile am ende meiner weisheit angelangt

-
Du solltest deine Schleife auch dann abbrechen lassen, wenn a leer ist.
-
ui danke das wars.
a.front() auf eine leere deque anzuwenden liefert wohl nur datenmüll (hätte ich theoretisch auch selbst drauf kommen können)jetzt kann das wochenende beginnen
