Abfrage dreier Argumente
-
_matze schrieb:
Du weißt ja, dass du "^" in C++ nicht zum potenzieren nehmen kannst, ne (ist bitweises Oder)? Nur zur Sicherheit...

ohje also kann ich in meinem Programm garkein ^ abfragen dann:
... case '^': double zwspeich = w1; for (int i=1; i <= w2-1; i++) { zwspeich = zwspeich * w1; } erg = zwspeich; break; ...machen
?!ohje ohje und ich dachte ich wär gleich fertig XD
-
Dafür gibt's auch 'ne Funktion, keine Sorge: pow()
-
_matze schrieb:
Dafür gibt's auch 'ne Funktion, keine Sorge: pow()
als ich pow() genutzt habe kam eine Fehlermeldung... moment ich schrieb mal kurz um
Edit:
pow: Bezeichner wurde nciht gefunden
?!
Erledigt... pow machts mir fehlte das include math.h

-
Hast du <cmath> inkludiert?
EDIT: Nimm <cmath> statt math.h ...
-
_matze schrieb:
Hast du <cmath> inkludiert?
EDIT: Nimm <cmath> statt math.h ...
cmath.h no such file in directory ?!
wasn der unterschied zu math.h?
-
Nicht cmath.h, sondern cmath. Die C++-Header haben keine Endung, im Gegensatz zu den alten C-Headern. math.h gilt als veraltet, man soll cmath inkludieren. Ist einfach so.
Einen Unterschied bei den Funktionen wirst du wohl nicht bemerken, zumal cmath, wenn ich mich nicht irre, sowieso math.h einbindet...
-
_matze schrieb:
Nicht cmath.h, sondern cmath. Die C++-Header haben keine Endung, im Gegensatz zu den alten C-Headern. math.h gilt als veraltet, man soll cmath inkludieren. Ist einfach so.
Einen Unterschied bei den Funktionen wirst du wohl nicht bemerken, zumal cmath, wenn ich mich nicht irre, sowieso math.h einbindet...Doch, es hat einen Unterschied. Die Funktionen befinden sich unteranderem dann auch im Namensraus
std. Also man kannstd::powstattpowschreiben, muss es aber glaub ich nicht unbedingt.Edit: Übrigens ist '^' nicht das Bitweise Oder, sondern das XOR.
Grüssli
-
_matze schrieb:
Nicht cmath.h, sondern cmath. Die C++-Header haben keine Endung, im Gegensatz zu den alten C-Headern. math.h gilt als veraltet, man soll cmath inkludieren. Ist einfach so.
Einen Unterschied bei den Funktionen wirst du wohl nicht bemerken, zumal cmath, wenn ich mich nicht irre, sowieso math.h einbindet...läuft

nur mein Programm noch nicht...
bei 2+(2^8)+(2+2) kommt 260 raus... Falsch
bei 2+(2^8)+(2+2)+2) kommt 264 raus... richtighängt bei mir wohl daran das er bei 1. Fall das hintere + nimmt ab dort spaltet...
"sch*%$(%" wenn ich das mal sagen darf...
-
Dravere schrieb:
Also man kann
std::powstattpowschreiben, muss es aber glaub ich nicht unbedingt.Doch muss man. Zumindest wenn der Header Standardkonform ist. Umgehen kann mans dann durch das übliche using namespace std; Eventuell sind einzelne Hersteller so "hilfreich", dass sie mit <cmath> und den anderen C-Headern die Funktionen sowohl im globalen als auch im std-Namensraum einführen (und damit die Intentionen des Standards ad absurdum führen)
-
Dravere schrieb:
Edit: Übrigens ist '^' nicht das Bitweise Oder, sondern das XOR.
Upps, na klar...
