AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein record mit case - wie sag ichs in C?
Thema durchsuchen
Ansicht
Themen-Optionen

record mit case - wie sag ichs in C?

Ein Thema von SnuffMaster23 · begonnen am 26. Jan 2008 · letzter Beitrag vom 26. Jan 2008
Antwort Antwort
Benutzerbild von SnuffMaster23
SnuffMaster23

Registriert seit: 13. Feb 2006
Ort: Kempten
253 Beiträge
 
#1

record mit case - wie sag ichs in C?

  Alt 26. Jan 2008, 18:40
Ich habe folgende records:
Delphi-Quellcode:
TVector = record
  x, y, z: Double;
end;

TVertex = record
  u, v: Double;
  case Integer of
    0: (nx, ny, nz,
        x, y, z: Double);
    1: (Normal,
        Position: TVector);
end;
TVector hat man in C ja gleich hingeschrieben, aber wie siehts mit TVertex aus? Alle meine Versuche mit struct und union sind bisher gescheitert. Entweder kennt mir die IDE TVertex nicht und dafür zwei namenlose structs oder TVertex hat nur u und v
Ich möchte den TVertex in C genauso benutzen können wie in Delphi und keine dreiteiligen Namen schreiben müssen (z.B MyVertex.doubles.ny oder MyVertex.Vectors.Normal). In C ist doch so gut wie alles möglich, das muss doch gehen
"Conspiracy is the poor man's mapping of the world" - Fredric Jameson
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: record mit case - wie sag ichs in C?

  Alt 26. Jan 2008, 18:43
Code:
union
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von SnuffMaster23
SnuffMaster23

Registriert seit: 13. Feb 2006
Ort: Kempten
253 Beiträge
 
#3

Re: record mit case - wie sag ichs in C?

  Alt 26. Jan 2008, 19:15
Natürlich union, hab ich oben ja geschrieben^^
Aber es lag mal wieder an meiner eigenen Blödheit (Semikolon weiter oben vergessen ), mein erster Versuch scheint doch richtig zu sein:
Code:
struct TVertex
{
  double u, v;
  union
  {
    struct
    {
      double nx, ny, nz,
               x, y, z;
    };
    struct
    {
      TVector Normal,
              Position;
    };
  };
};
Sicher sagen kann ichs noch nicht, ich krieg noch Fehlermeldungen in Dateien vom Compiler

//Edit: Jo geht tatsächlich
"Conspiracy is the poor man's mapping of the world" - Fredric Jameson
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz