Brauche dringend Hilfe
-
Bin ein echter Anfänger was das angeht.
Hallo,
kann mir jemand einen kompakten c quellcode für diese aufgaben stellung sagen:Es ist eine Variable x gegeben, die den wert 0 oder 1 annehmen kann.
Schreiben Sie in einer Programmiersprache ihrer wahl eine Funktion die folgende anweisungen erfüllt.Wenn die Variable x den Wert 0 hat, so soll diese Variable den wert 1 erhalten, und wenn die variable x den wert 1 hat, soll diese den wert 0 erhalten.
Es soll angeblich in einem Zeile gehen
danke im vorraus
-
In C++:
void toggle(int& x) { x = !x; }
EDIT: Bzw. in C:
void toggle(int* x) { (*x) = !(*x); }
-
ui ist das richtig so.
Gibt es das auch verständlicher für mich ?
-
Vielen Dank für deine super fixe antwort.
Kannst mir vieleicht auch sagen wie dieses programm aussehen würde wenn ich es mit einer rückgabe machen sollte
-
Also ! ist der Nicht-Operator. Wenn man sagt !x dann macht er aus x eine 1 falls x den Wert 0 hat, ansonsten wird x zu 0.
& hinter int steht für Referenz. Das bedeutet, dass du nur einen Verweis auf den integer übergibst.
Du könntest das auch mit if-else machen oder mit ? : , aber gerade letzteres sollte im Moment noch uninteressant sein, da es dich nur verwirrt.
Die C-Variante arbeitet mit Pointern. Das ist aber wieder ein Kapitel für sich. Habe das nur angemerkt, weil d meintest du willst in C schreiben. Hier ist aber das C++ Forum.
Probier einfach mal ein wenig herum
.
-
lector schrieb:
Vielen Dank für deine super fixe antwort.
Kannst mir vieleicht auch sagen wie dieses programm aussehen würde wenn ich es mit einer rückgabe machen sollteAlso, da gibt es auch 3 Möglichkeiten
int toggle(int x) { return !x; }
int toggle(int x) { return (x == 0) ? 1 : 0; }
int toggle(int x) { if(x == 0) return 1; else return 0; }
-
lector schrieb:
Kannst mir vieleicht auch sagen wie dieses programm aussehen würde wenn ich es mit einer rückgabe machen sollte
Kein Problem:
Du übergibst den Wert by Value bzw. by const Reference - je nachdem wie groß der Typ der zuübergebenden Variable ist - rufst den operator! für die Variable auf und returnst das Ergebnis by Value.btw:
es wäre besser wenn du konkrete Fragen stellen würdest - denn deine Aufgaben solltest du schon selber machen.
-
Vielen Dank damit ist mir schon sehr geholfen
Ich sag nur hier wird mann geholfen