Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Forentreff 2012     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: Die Artikel ::  Interpreterbau - Ein Anfang  
Gehen Sie zu Seite Zurück  1, 2
  Zeige alle Beiträge auf einer Seite
Auf Beitrag antworten
Autor Nachricht
Samyboy
Mitglied

Benutzerprofil
Anmeldungsdatum: 13.10.2009
Beiträge: 250
Beitrag Samyboy Mitglied 11:07:00 07.12.2010   Titel:              Zitieren

Toller Artikel, hat mir sehr geholfen!


Zuletzt bearbeitet von Samyboy am 11:08:01 07.12.2010, insgesamt 1-mal bearbeitet
leiderC++
Unregistrierter




Beitrag leiderC++ Unregistrierter 15:11:33 07.12.2010   Titel:   Re: Danke! Klasse Tutorial            Zitieren

iJake1111 schrieb:
Das ist wohl eines der Besten C Tutorials, das ich je gesehen hab, Respekt! :live: Seit diesem Tut, sehe ich Parser schon mit ganz anderen Augen :D

Nochmal rechten Dank!
Mfg iJake1111


Leider ist es C++
Dummie
Mitglied

Benutzerprofil
Anmeldungsdatum: 19.06.2004
Beiträge: 416
Beitrag Dummie Mitglied 17:56:23 11.12.2010   Titel:   Re: Danke! Klasse Tutorial            Zitieren

leiderC++ schrieb:
iJake1111 schrieb:
Das ist wohl eines der Besten C Tutorials, das ich je gesehen hab, Respekt! :live: Seit diesem Tut, sehe ich Parser schon mit ganz anderen Augen :D

Nochmal rechten Dank!
Mfg iJake1111


Leider ist es C++

Ich habe die einfache Version in C portiert. Steht also ab jetzt auch zum Download bereit. Vielleicht interessiert sich ja jemand dafür. :)
knivil
Mitglied

Benutzerprofil
Anmeldungsdatum: 11.02.2009
Beiträge: 4490
Beitrag knivil Mitglied 18:09:25 11.12.2010   Titel:              Zitieren

Als Stichwort: Parser Combinator

_________________
If it were not for laughter, there would be no Tao.
Sie können einen Beitrag nicht so schnell nach Ihrem letzten absenden, bitte warten Sie einen Augenblick.
Robert1996
Mitglied

Benutzerprofil
Anmeldungsdatum: 21.07.2011
Beiträge: 86
Beitrag Robert1996 Mitglied 21:30:19 28.11.2011   Titel:              Zitieren

OK. Ich habe mir das Tutorial zu Gemüte geführt und den Quelltext erstmal gedownloadet. Wenn ich diesen kompiliere, geht noch alles glatt. Wenn das Programm dann allerdings startet, kann ich auch ohne Probleme meinen String eingeben, nachdem ich 'Enter' gedrückt habe, kommt aber immer folgende Meldung: "Debug Assertion Failed! ....". Wenn ich dann auf ignorieren klicke, steht das Ergebnis auch da. Wie kriege ich also die Fehlermeldung weg?

Schonmal danke im Voraus.
GPC
Moderator

Benutzerprofil
Anmeldungsdatum: 11.07.2004
Beiträge: 6305
Beitrag GPC Moderator 09:53:14 29.11.2011   Titel:              Zitieren

Ich hab mir jetzt den Quellcode nicht angesehen, aber mein erster Anhaltspunkt wäre, dass man nach einem "assert" Ausschau hält und herausfindet, warum das fehlschlägt.
Dummie
Mitglied

Benutzerprofil
Anmeldungsdatum: 19.06.2004
Beiträge: 416
Beitrag Dummie Mitglied 17:15:32 30.11.2011   Titel:              Zitieren

Hey,

probier mal in der Datei Scanner.cpp die Funktion Scanner::readNextChar() zu suchen und ersetz in dieser die Zeile
C/C++ Code:
if (myPos > myInput.length())
C/C++ Code:
if (myPos > myInput.length())
C/C++ Code:
if (myPos > myInput.length())

durch diese Zeile (es kommt ein = hinzu):
C/C++ Code:
if (myPos >= myInput.length())
C/C++ Code:
if (myPos >= myInput.length())
C/C++ Code:
if (myPos >= myInput.length())


Warum aber der Fehler erst jetzt auftritt ist mir nicht klar. Vermutlich hat es was mit der neu herausgekommenen Visual Studio Version oder 32 Bit bzw. 64 Bit Systemen zu tun. Mir wäre der Fehler (der unabhängig von der Eingabe immer auftritt) sonst definitiv aufgefallen.

Vielen Dank für die Rückmeldung :)

Edit:
Falls jemand parallel zu neuren Versionen noch die alte Version installiert hat, wäre es wirklich sehr nett, wenn jemand überprüfen könnte, ob der Fehler dort auch auftritt und ob length() in den Versionen vielleicht unterschiedliche Werte zurückliefert oder ob in der Bibliothek einfach ein Assert dazugekommen ist.


Zuletzt bearbeitet von Dummie am 17:22:23 30.11.2011, insgesamt 1-mal bearbeitet
C/C++ Forum :: Die Artikel ::  Interpreterbau - Ein Anfang  
Gehen Sie zu Seite Zurück  1, 2
Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können keine Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.