Forum: Mikrocontroller und Digitale Elektronik Frage bei einer Funktion


von Hans kanns net (Gast)


Lesenswert?

Guten Abend zusammen,

Sorry für die Schlechten Betreff aber mir ist es nichts besseres 
eingefallen.

Ich versuche gerade eine Code zu verstehen, soweit hatte es auch 
geklappt bis die Funktion bzw. ein zeichen in der Funktion gekommen ist.

Vector_Add(&Omega[0], &Gyro_Vector[0], &Omega_I[0]);
was die Funktion macht ist mir glaube ich klar, nämlich 2 Vektoren zu 
addieren.
Ich kann aber nichts mit dem UND vor jeder Variable anfangen.

Kann mir das jemand kurz erklären?

MFG
Hans

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Hans kanns net schrieb:
> Ich kann aber nichts mit dem UND vor jeder Variable anfangen.

Das ist kein UND. Das ist der Adressoperator.

Die Schreibweise &Array[0] ist eine etwas umständliche Schreibweise für 
die Adresse des ersten Arrayelements. In C kann man stattdessen auch 
einfach Array schreiben, denn auch das ist die Adresse des ersten 
Arrayelementes, so daß aus

Vector_Add(&Omega[0], &Gyro_Vector[0], &Omega_I[0]);

das hier wird:

Vector_Add(Omega, Gyro_Vector, Omega_I);

von troll (Gast)


Lesenswert?


von Andreas S. (Firma: Schweigstill IT) (schweigstill) Benutzerseite


Lesenswert?

Leider gibst Du nicht an, um welche Programmiersprache es sich dabei 
handeln soll. Dies ist auch aus dem gewählten Brett nicht ersichtlich.

In der Annahme, dass es sich um C oder C++ handeln sollte, hier der 
große Tipp: Lies' ein Buch. Oder lies ein Tutorial. Oder beides. Die 
Bedeutung des "&" in dem genannten Kontext ist so elementar, dass es 
sich um absolutes Grundlagenwissen handelt, das man sich durch Lesen der 
Sprachdefinition oder einer entsprechenden Anleitung erarbeitet.

Derartige Fragen werden hier so häufig gestellt, nur weil alle möglichen 
Leute zu faul sind, selbst ein bisschen zu recherchieren. Wenn Du eine 
konkrete Frage zu den hinter der Bedeutung des "&" stehenden Konzepten 
gestellt hättest, wäre diese sicherlich beantwortet worden.

Dir fehlt es aber komplett an den Grundlagen von C/C++, so dass die 
isolierte Beantwortung Deiner derzeitigen Frage keinen Sinn macht.

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.