Diskussion:C-Programmierung: Komplexe Datentypen

Seiteninhalte werden in anderen Sprachen nicht unterstützt.
Aus Wikibooks

Unions, Strukturen, Enums[Bearbeiten]

Dem unerfahrenen Leser (wie z.B. ich) kann sich meiner Meinung nach keinen Reim darauf machen, wofür Unions gut sein sollen. Bei Strukturen und Enums ist es ja relativ ersichtlich (auch wegen der Beispiele), dass sie nützlich sind, aber Unions... -- 91.16.127.175 20:42, 6. Okt. 2008 (Signatur nachgetragen Jürgen 16:16, 4. Mär. 2011 (CET))[Beantworten]

Kann mich dem nur anschliessen, ich hänge noch bei Strukturen.
Es wäre gut z.B. den Umstand zu erwähnen, dass String Komponenten von Strukturen offensichtlich nicht in gewohnter Weise zugewiesen können.
Von normalen Strings kommend versuchte ich es mit:
structure.stringkomponente = "Text";
Da ich ja auch einen normalen String etwa mit:
stringname[] = "Text";
einem char array zuweise.
Diese Methode scheitert aber innerhalb von Strukturen. Aus anderen Howtos hab ich dann an Beispielen gesehen, dass man wohl strcpy benutzen muss um strings an char struktur komponenten zuzuweisen. -- boba 16:00, 4. März 2011 (Signatur nachgetragen Jürgen 16:16, 4. Mär. 2011 (CET))[Beantworten]

Kapitel nicht bearbeitbar?[Bearbeiten]

Gibt es einen speziellen Grund, warum genau dieses Kapitel nicht bearbeitbar ist, oder überseh ich hier einfach nur etwas? -- Ginchiller 18:55, 4. Nov. 2011 (Signatur nachgetragen von: Jürgen 19:09, 4. Nov. 2011 (CET) -- bitte künftig mit 4 Tilden ~~~~ selbst erledigen)[Beantworten]

Diese Seite wurde wegen "EditWar" auf Dauer geschützt und darf nur von "registrierten Benutzern" bearbeitet werden. "registriert" meint dabei, dass der Nutzer sich nicht gerade erst angemeldet hat, sondern bereits vor einer gewissen Zeit, genauer: vor mindestens sieben Tagen. -- Jürgen 19:09, 4. Nov. 2011 (CET)[Beantworten]

Da ich nichts bearbeiten kann: Im Kapitel Unions bei dem Satz "und kann auf die einzellnen Teile zugreifen." einzelnen statt einzellnen... --Xakos 17:25, 12. Feb. 2012 (CET)[Beantworten]

Danke für den Hinweis, ist erledigt. -- Jürgen 17:33, 12. Feb. 2012 (CET)[Beantworten]

Deklaration und Allocation von komplexen Datentypen[Bearbeiten]

Im Abschnitt C-Programmierung: Komplexe Datentypen#Variablen-Deklaration sollte noch erwähnt werden, dass die Deklaration einer Variable ausreicht, um den Speicherplatz zu alloziieren und danach auf die Felder des komplexen Datentyps zugreifen zu können (als Quelle z.B. http://www.cs.usfca.edu/~wolber/SoftwareDev/C/CStructs.htm) (man könnte es so verstehen, dass die Deklaration eine Art ungültigen Datentyp erzeugt (eben nur Speicherplatz bestimmter Größe alloziert), die ihre eigene Struktur nicht kennt, sodass man auf die Felder nicht zugegriffen kann). --92.195.26.60 17:49, 9. Jun. 2012 (CEST)[Beantworten]

Aufzählungen und Konstanten[Bearbeiten]

In dem Abschnitt Aufzählungen ist geschrieben, dass enum einer definiton mehrer Konstanten entspricht ("Aufzählungstypen sind eigentlich nichts anderes als eine Definition von vielen Konstanten."). Dies ist eher unklar, da man so interpretieren kann, dass

 enum farbe
   {
     BLAU
     SCHWARZ
     GRUEN
   };

und

 #define BLAU    0
 #define SCHWARZ 1
 #define GRUEN   2

identisch sind. Jedoch kann mit mit den Konstanten, welche mit enum definiert werden keine Preprozessor-Abfragen gemacht werden, da der Preprozessor anscheinend kein enum lesen kann. (Hatte probleme bekommen, als ich mit dem AVR-GCC mit #if abfragen Werte mit enum-Konstanten abfragte, bin mir nicht sicher, wie andere Compiler darauf reagieren oder wie der C(11)-Standart genau definiert ist) Sollte man da einen Hinweis oder so Einfügen? Hobbyloser.jp 10:07, 4. Jul. 2012 (CEST)[Beantworten]

Primitive und komplexe Variablen[Bearbeiten]

Der erste Satz in diesem Kapitel lautet: "Strukturen fassen mehrere primitive oder komplexe Variablen zu einer logischen Einheit zusammen". Ist es wirklich korrekt bzw. üblich, Variablen mit einem primitiven/komplexen Datentyp einfach als primitive/komplexe Variablen zu bezeichnen? --Stefan Nagy 11:18, 28. Nov. 2017 (CET)[Beantworten]