Kaylab Geschrieben 19. September 2005 Geschrieben 19. September 2005 Hi Bin grade dabei, c++ zu lernen und bin nun bei Referenzen angelangt. Dazu habsch nen simples Prog zur Kreisberechnung geschrieben. Leider gibt mir der compiler immer eine Fehlermeldung. Der code und die Fehlermeldung folgt nun: // Arbeitsbereich: referenzen // berechnung.cpp ///////////////////////////// #define const PI = 3.1415926536 void Kreis (const double &Radius, double &Umfang, double &Flaeche) { Umfang = 2 * PI * Radius; Flaeche = PI * Radius * Radius; } F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(10) : error C2059: Syntaxfehler : '=' F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(11) : error C2059: Syntaxfehler : '=' Benutz MS Visual Studio. Bitte nicht lachen *g* aber was ist falsch? Sitz da schon mehrere Stunden vor und versteh den Fehler nicht :/ Greetz und Thx Kaylab Zitieren
Guybrush Threepwood Geschrieben 19. September 2005 Geschrieben 19. September 2005 Beim define PI muss das = weg Zitieren
Kaylab Geschrieben 19. September 2005 Autor Geschrieben 19. September 2005 Hi, ich habe es ausprobiert. danach kommt folgende Fehlermeldung: F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2065: 'PI' : nichtdeklarierter Bezeichner F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2143: Syntaxfehler : Fehlendes ')' vor 'constant' F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2182: 'Kreis' : Ungueltige Verwendung des Typs 'void' F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2059: Syntaxfehler : ')' F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(9) : error C2143: Syntaxfehler : Fehlendes ';' vor '{' F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(9) : error C2447: '<L_PROPERTY>' : Funktionskopf fehlt - Parameterliste im alten Stil? Habs wieder rückgängig gemacht, weil noch mehr Feher waren. nach dem rückgängig machen kommt aber nun nichtmehr die alte Fehlermeldung :/ sondern folgende: F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2065: 'PI' : nichtdeklarierter Bezeichner F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : warning C4244: '=' : Konvertierung von 'const double' in 'int', moeglicher Datenverlust F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2144: Syntaxfehler : '<unbekannt>' sollte auf '<unbekannt>' folgen F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : error C2448: '<unbekannt>' : Funktionsstil-Initialisierung scheint eine Funktionsdefinition zu sein F:\projekte\c++ Lernen und professionell anwenden\Kapitel11\referenzen\berechnung.cpp(8) : fatal error C1004: Unerwartetes Dateiende gefunden Nun bin ich komplett verwirrt der PC hats ma wieder geschafft *g* edit: Habe nun das "const" bei PI weg genommen und nun läufts ^^ aber was genau war an dem const falsch? Zitieren
Guybrush Threepwood Geschrieben 19. September 2005 Geschrieben 19. September 2005 const bechreibt eine Variable. Du hast aber keine Variable angelegt sondern nur die Zeichenfolge PI definiert. D.h. bevor das Programm kompiliert wird ersetzt der Präprozessoer PI immer mit 3,1415.... Zitieren
Kaylab Geschrieben 19. September 2005 Autor Geschrieben 19. September 2005 Danke wieder was gelernt Zitieren
M.A.Knapp Geschrieben 20. September 2005 Geschrieben 20. September 2005 zusammenfassend kann man sagen: entweder const PI = 3.1415926536 oder #define PI 3.1415926536 Zitieren
Kaylab Geschrieben 23. September 2005 Autor Geschrieben 23. September 2005 thöngs habs mitllerweile dann auch gelesen *ggg* habe nochmal ne frage... bastel mir grade nen "schreibtrainer".... bekomme es aber leider nicht hin, dass die eingabe nach eingabe eines zeichens automatisch beendet wird. muss also nach eingabe des buchstabens immer enter drücken :/ dass nur ein zeichen gelesen wird habe ich schon hinbekommen... aber es ist halt ein wenig nervig, immer enter nach nem buchstaben zu drücken :/ cin >> setw (1) >> cEingabe; da musste mE was geändert werden thx schonmal im vorraus Zitieren
carstenj Geschrieben 23. September 2005 Geschrieben 23. September 2005 Hallo, das ist mit Standard C++ auch nicht möglich. Du musst in den Raw Modus schalten, dort wird jedes Zeichen sofort verarbeitet, ohne auf das RETURN zu warten. Dafür gibts entsprechende Bibliotheken, welche aber vom Betriebssystem abhängig sind: Linux: http://www.gnu.org/software/ncurses/ncurses.html http://www.pronix.de/pronix-392.html Unter Windows ist das conio, sollte aber standardmäßig dabei sein. Zitieren
Kaylab Geschrieben 23. September 2005 Autor Geschrieben 23. September 2005 vielen dank Problem gelöst *smile* Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.