Forum: Mikrocontroller und Digitale Elektronik struct globaler Variablenzugriff?


von struct.urschwach (Gast)


Lesenswert?

Hallo,

mal eine simple Frage zur C-Programmierung:

Gegeben sei ein struct.
Wenn ich nun eine Funktion schreibe, die einzelne Werte aus diesem strut 
aufruft und verändert, werden diese dann direkt global übernommen, oder 
muss man die irgendwie über Pointer aufrufen?

Beispiel:

struct T_Theaterstruct{
char Loge_1;
char Loge_2;
char Rang[10];
}Theater = {0,0,{}};

void meine_Funktion(char a)
{
Theater .Loge_1 = a;
Theater .Rang[3] = 2;
}

Ändern sich die Inhalte von "Theater" nun global?


mfg

von Maximilian (Gast)


Lesenswert?

Natürlich.

von struct.urschwach (Gast)


Lesenswert?

...tja nun habe ich mal versucht ein struct anzulegen.


struct T_Ringbuffer
{
char Soll;
char Ist;
char Buffer[RINGBUFFERGROSSE];
};

T_Ringbuffer TX_Ringbuffer;

Der compiler beschwert sich wie folgt:
>Error[Pe757]: variable "T_Ringbuffer" is not a type name

warum erkennt er den Typ nicht?

von mens profunda (Gast)


Lesenswert?

Weil du entweder ein typedef machen musst oder eben die variable als 
"struct T_Ringbuffer TX_Ringbuffer;" deklarieren.

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.