Warum funktioniert dieser Code nicht (c++)?

... komplette Frage anzeigen

5 Antworten

Ändere

int Rechenzeichen

zu

char Rechenzeichen
Antwort bewerten Vielen Dank für Deine Bewertung

Versuch mal nach dem cin ein cout zu setzen.

Zb cout << "Berechne..."<<endl;

Ich hab mich in C++ nie mit dem cout anfreunden können, von da her weis ich nicht ob und wie der die Integer in einen String Kovnertiert.

Ich würde sagen du versucht die cout mal durch printf("Ergebnis: %ld\\n",Zahl) zu ersetzen.

Btw für deine while-schleife kannst du auch einfach while(1) schreiben wenn du eine Endlosschleife willst.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Bluekilla
16.08.2016, 17:00

Ah danke :) ich probiers mal^^

0

Als erstes solltest du mal (solltest du eigentlich nicht) "while(1)" schreiben.

Als nächstes kannst du einen character schlecht als integer abspeichern also den Datentypen von "Rechenzeichen" auf 'char' ändern.

Dann hast du bei deiner switch-abfrage noch das '*' vergessen.

Das könnte es schon gewesen sein, ansonsten einfach breakpoints setzen, dann siehst du ganz genau was deine Variablen machen und wo der Fehler liegt. 

Liebe Grüße, JutenMorgen!

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Bluekilla
16.08.2016, 17:15

Was hab ich bei switch vergessen?

0

Hallo!

Er kann kein Ergebnis zeigen, da er nie in die while-Schleife kommt -- oder was ist der Anfangswert von Zahl1?

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Bluekilla
16.08.2016, 16:59

Es gibt keinen, der soll ja vom benutzer definiert werden

0
Kommentar von PeterKremsner
16.08.2016, 17:01

Das sollte dem cout egal sein, ober er aus der While schleife kommt oder nicht.

Zumindest wenn dieses wie printf arbeitet sollte die Ausgabe sofort mit dem Aufruf der Funktion und nicht mit dem Programmende erfolgen.

0
Kommentar von Bluekilla
16.08.2016, 17:22

Danke habs jetzt in while(1) geändert nun kommt diese fehlermeldung: )Warning: getc() expects 1 parameters, 0 parameters given
错误文件路径(error file path):_iostream
哪行出错(wrong line):248
Warning: getc() expects 1 parameters, 0 parameters given
错误文件路径(error file path):_iostream
哪行出错(wrong line):248
!!! return from main() function

0

"Rechenzeichen" ist ein int und kein String oder char..

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Bluekilla
16.08.2016, 17:05

In dem code ist es doch ein int

0
Kommentar von Bluekilla
16.08.2016, 17:08

Also muss ich char verwenden? Bei mir kommt eine fehlermeldung: )Warning: getc() expects 1 parameters, 0 parameters given
错误文件路径(error file path):_iostream
哪行出错(wrong line):248
Warning: getc() expects 1 parameters, 0 parameters given
错误文件路径(error file path):_iostream
哪行出错(wrong line):248
!!! return from main() function

0
Kommentar von Bluekilla
16.08.2016, 17:16

Wo muss ich das * hinsetzen?

0

Was möchtest Du wissen?