ich programmiere erst seit kurzem und weiss nicht genau ob ich hier richtig bin. Ich habe auf jeden fall folgendes problem: Mein Programm ist fehlerhaft und ich weiß nicht woran es liegt. mit diesem Programm will ich Polarkoordinaten in kartesische koordinaten umwandeln und umgekehrt. Das Ergebnis ist jedoch immer falsch und das programm wird immer fehlerhaft beendet. Ich bedanke mich schonmal im Voraus.
macht wenig Sinn. Du willst hier einen String vom Benutzer einlesen (mit "%s"), successfulscanfinish ist aber vom Typ int. Außerdem meckert der Debugger, weil successfulscanfinish nicht initialisiert, aber verwendet wurde (würdest du einen int-Wert einlesen, müsstest du die Adresse der Variablen übergeben, nicht die Variable selbst => "%successfulscanfinish"). Was willst du mit der Zeile bezwecken? Dass sich die Konsole nicht schließt? Das ist kein vernünftiger Weg. Besser wäre z.B. sowas:
Danke für die schnelle Antwort.
Ja, ich wollte mit successfulscanfinish bezwecken, dass das programm nicht sofort beendet. Wenn ich aber deinen vorgeschlagenen code eingebe, bekomme ich folgende Meldung: "error: a function-definition is not allowed here before '{' token".
Ausserdem ist damit nur der Fehler beim Beenden behoben. Das Programm rechnet mir immer noch falsche Ergebnisse aus.
Danke für die schnelle Antwort.
Ja, ich wollte mit successfulscanfinish bezwecken, dass das programm nicht sofort beendet. Wenn ich aber deinen vorgeschlagenen code eingebe, bekomme ich folgende Meldung: "error: a function-definition is not allowed here before '{' token".
Ausserdem ist damit nur der Fehler beim Beenden behoben. Das Programm rechnet mir immer noch falsche Ergebnisse aus.
Du musst die Funktionsdefinition (also das, was ich gepostet habe) oben zwischen die includes und die main-Funktion packen (nicht in die Funktion!), und am Ende der main (vor das return) notierst du "wait();". Dann sollte es klappen. Die Rechnerei schaue ich mir jetzt nicht mehr an, ich leg mich schlafen. Es hilft dir sicher, wenn du schrittweise mit dem Debugger durch das Programm steppst (Breakpoint auf eine Zeile mit F9 setzen und dann mit F10/F11 Zeile für Zeile einzeln ausführen, Variableninhalte z.B. per Tooltip überprüfen).
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
Wenn ich das tue bekomme ich wieder nen haufen an Fehlermeldungen:
1. "error: `STD_INPUT_HANDLE' was not declared in this scope"
2. "error: `GetStdHandle' was not declared in this scope"
3. "error: `FlushConsoleInputBuffer' was not declared in this scope"
4. "error: `_getch' was not declared in this scope"
dann kommt die gleiche Fehlermaldung ohne Unterstrich:
"error: `getch' was not declared in this scope"
Ich habe jetzt "wait()" statt "getch()" eingefügt. Da kann ich das Programm compilieren. Wenn ich es öffne bleibt es aber nur eine Sekunde (ohne allem nur den Bruchteil einer Sekunde).
wait beiseite. Das echte Problem ist ja nicht das Schliessen sondern das Ergebnis.
_________________ Microsoft Windows 7 Home Premium
Service Pack 1
Code::Blocks 10.05
Zuletzt bearbeitet von marktrash am 14:19:42 05.03.2010, insgesamt 2-mal bearbeitet
Ich hab keinen Plan von Polarkoordinaten :oD soviel zuerst.
1. #include <conio.h> könnte dein getch() - Problem loesen
2. bei der Ausgabe printf("...", x) << den Adressoperator weglassen. Hier brauchst du keine Referenz.
3. Bei den Funktionen cos und sin wird als Argument das Bogenmass uebergeben
siehe hierzu http://www.willemer.de/informatik/cpp/mathlib.htm
Punkt 3 kann bei dir durchaus richtig sein. Aber ich weiß halt nicht, was die
Werte bei der Umrechnung darstellen. Schon garnicht weiß ich, was ein Azimut ist
_________________ Der Vorteil in der Klugheit besteht darin, dass man sich dumm stellen kann.
(Code::Blocks 10.5, mingw32 gcc 4.4.1)
Nächstes Thema anzeigen Vorheriges Thema anzeigen
Sie können 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.
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.