Hallo Leute, ich bin heute über folgende c Zeile gestplpert
1 | mode = ptast->mode; |
Was macht der Befehl "->" ? Gruß technikus
|
Forum: Compiler & IDEs was macht "->" ?Hallo Leute, ich bin heute über folgende c Zeile gestplpert
Was macht der Befehl "->" ? Gruß technikus C-Buch lesen? Kurzfassung: "pointerAufStruct -> member" ist dasselbe wie "(*pointerAufStruct).member" Aber da du wohl so oder so ein C-Buch lesen musst, spare ich mir Details ;) hth, Jörg In C++ ist das doch ein This-Zeiger weiß nicht ob dir das was hilft, da ich noch nicht solang C programmier @hans & technikus C Buch lesen!! @hans ja, jede instanzierte Klasse (Objekt) hat einen so gegannten this Zeiger auf die Member Attribute / Funktionen. Du kannst auch sagen (*this).Deine_Member_Variable oder this->Deine_Member_Variable das ist äquivalent! Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt den Zeiger auf sich selbst (anderes Objekt) geben möchte... aber das is eigentlich auch egal und tut nix zur Sache.. wie gesagt jeder der C / C++ / C# .. programmiert sollte wissen, dass pointer_auf_struct->Member_in_struct dasselbe ist wie variable_von_struct.Member_in_struct ist! Ciao >Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt >den Zeiger auf sich selbst (anderes Objekt) geben möchte... Und in ST ist das der ADRINST() Operator.... (Wird leider nicht von jeder SPS unterstützt) sebastian schrieb: > Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt > den Zeiger auf sich selbst (anderes Objekt) geben möchte... aber das is > eigentlich auch egal und tut nix zur Sache.. Den braucht man, wenn ich mich recht entsinne, hin und wieder auch, wenn man seine Klassenmitglieder durch andre Variablen oder sowas verdeckt, was man natürlich tunlichst vermeiden sollte. Hans schrieb: > In C++ ist das doch ein This-Zeiger weiß nicht ob dir das was hilft, da > ich noch nicht solang C programmier Ein this-Zeiger heißt so, weil er this heißt ;-) und so aussieht:
Nur weil da ein -> steht, hat das noch lange nichts mit this zu tun. Vor dem -> kann ja auch was völlig anderes stehen. Sven P. schrieb: > sebastian schrieb: >> Aber this pointer braucht man nur (C++), wenn man einem anderen Objekt >> den Zeiger auf sich selbst (anderes Objekt) geben möchte... aber das is >> eigentlich auch egal und tut nix zur Sache.. > > Den braucht man, wenn ich mich recht entsinne, hin und wieder auch, wenn > man seine Klassenmitglieder durch andre Variablen oder sowas verdeckt, > was man natürlich tunlichst vermeiden sollte. Oh Mann... ich seh schon, hier sind die wahren C++ Experten am Start. :-) Guten morgen liebe Forumer, hätte da auch ne Frage: was macht " ^= " ? Gruß aus Berlin Hi, foo ^= bar; ist die Kurzform für foo = foo ^ bar; wobei ^ der bitweise XOR-Operator (exklusives Oder) ist. -Ed bedeutet also wenn ich eine Maske verknüpfe 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 ?? >bedeutet also wenn ich eine Maske verknüpfe >0 + 0 = 0 >0 + 1 = 1 >1 + 0 = 1 >1 + 1 = 0 >?? Ich kann gerade Deinem Satzbau nicht folgen. Was ist die Frage? Wenn, dann müsste es jedenfall so heissen: 0 ^ 0 = 0 0 ^ 1 = 1 1 ^ 0 = 1 1 ^ 1 = 0 Das ^ ist in C das Zeichen für die Exklusiv-Oder Verknüpfung. Insofern stimmt Deine Wertetabelle. Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
|
|