Forum: Compiler & IDEs Struktur im Zusammenhang mit typedef


von Olaf (Gast)


Lesenswert?

Hi!

Ich habe noch ein paar Verständnisprobleme, was die Verwendung von 
Strukturen zur Typendefinition angeht. Nehmen wir mal an ich möchte 
einen Datentyp für einen Punkt definieren, also (x,y).
1
typedef struct _Punkt {
2
  float x;
3
  float y;
4
}Punkt;

Wäre das so korrekt? Welchen Sinn hat jetzt hier das typedef? Bzw. würde 
es auch ohne Funktionieren? Und wieso gibt es 2 "Namen" für den 
Typ(_Punkt,Punkt)?

mfg.

von Klaus W. (mfgkw)


Lesenswert?

Olaf schrieb:
> Wäre das so korrekt?

Ja, abgesehen davon, daß man dem Namen Punkt nicht ansieht, daß es
ein Typ ist.
punkt_t oder so etwas wäre geschickter.

> Welchen Sinn hat jetzt hier das typedef?

Es definiert einen zusätzlichen Namen Punkt für struct _Punkt.

> Bzw. würde
> es auch ohne Funktionieren?

Ohne was? Ohne typedef? Ja, dann müsstest du halt als Typ immer
struct _Punkt schreiben.

> Und wieso gibt es 2 "Namen" für den
> Typ(_Punkt,Punkt)?

Weil du es mit dem typedef so definiert hast.
Der erste Typ heißt übrigens nicht _Punkt, sondern struct _Punkt.

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.