<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="http://update.proggen.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://update.proggen.org/feed.php">
        <title>proggen.org c:type</title>
        <description></description>
        <link>http://update.proggen.org/</link>
        <image rdf:resource="http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico" />
       <dc:date>2026-04-19T08:56:43+0200</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:array&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:char&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:double&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:enum&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:float&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:floats&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:int&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:integer&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:long&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:short&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:sidebar&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:start&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:struct&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:typedef&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:union&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=c:type:unsigned&amp;rev=1663868367"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico">
        <title>proggen.org</title>
        <link>http://update.proggen.org/</link>
        <url>http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico</url>
    </image>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:array&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:array</title>
        <link>http://update.proggen.org/doku.php?id=c:type:array&amp;rev=1663868367</link>
        <description>Arrays

Erste Frage: Was ist das? Ein Array sind Daten eines bestimmten Datentyps, zum Beispiel char. In einem char kann immer ein Buchstabe aufbewahrt werden. Will man mehrere hintereinander setzen, benutzt man dazu ein Array.

&quot;HALLO&quot;

ist also ein Array, bestehend aus 6 chars. Sechs, weil am Schluss immer noch das Nullbyte folgt. Das Nullbyte setzt der Compiler automatisch. So lässt sich leicht zählen, wie viele Buchstaben in dem Array sind. Man zählt einfach durch, bis man das Nullbyte gefun…</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:char&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:char</title>
        <link>http://update.proggen.org/doku.php?id=c:type:char&amp;rev=1663868367</link>
        <description>Char

In C ist ein Char auf modernen Computern 1 Byte bzw. mindestens 8 Bit groß. Die Bezeichung Char kommt daher, weil man den Datentyp vor allem dafür verwendet um Zeichen(engl. Characters) zu halten. Ein</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:double&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:double</title>
        <link>http://update.proggen.org/doku.php?id=c:type:double&amp;rev=1663868367</link>
        <description>double

Ein double entspricht 8 Bytes und zählt zu den Fließkomma-Datentypen, man kann also nun auch reelle Zahlen speichern - zumindest einen Teil davon, denn auch für Fließkommazahlen gelten einige Besonderheiten.

Die exakten minimalen und maximalen Werte können bei (eher exotischen) Computern abweichen, die exakten Werte können mit den Konstanten</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:enum&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:enum</title>
        <link>http://update.proggen.org/doku.php?id=c:type:enum&amp;rev=1663868367</link>
        <description>Enumerations

Die Enumeration, auf Deutsch Aufzählung, ist ein Datentyp, der nur bestimmte Werte aufnehmen kann. Vorrangig wird er eingesetzt, um Quelltext lesbarer und typsicherer zu gestalten.

Nehmen wir als Beispiel eine Ampel: Möchte man den aktuellen Status einer Ampel speichern, so könnte man hingehen und den einzelnen Möglichkeiten Werte zuweisen:</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:float&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:float</title>
        <link>http://update.proggen.org/doku.php?id=c:type:float&amp;rev=1663868367</link>
        <description>float

Ein float entspricht 4 Bytes und zählt zu den Fließkomma-Datentypen, man kann also nun auch reelle Zahlen speichern - zumindest einen Teil davon, denn auch für Fließkommazahlen gelten einige Besonderheiten.

Die exakten minimalen und maximalen Werte können bei (eher exotischen) Computern abweichen, die exakten Werte können mit den Konstanten</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:floats&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:floats</title>
        <link>http://update.proggen.org/doku.php?id=c:type:floats&amp;rev=1663868367</link>
        <description>Fließkommazahlen

C kennt noch zwei weitere Datentypen: float und double. Wichtig zu wissen ist, dass C(und andere Programmiersprache) die englische Zahlenschreibweise verwenden. Das bedeutet, dass als Dezimaltrennzeichen ein Punkt und kein Komma verwendet wird. 0,5 schreibt man also 0.5 und ist gleich 1 durch 2.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:int&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:int</title>
        <link>http://update.proggen.org/doku.php?id=c:type:int&amp;rev=1663868367</link>
        <description>Int

Ein Int entspricht 4 Bytes und zählt zu den integeren  Datentypen, das bedeutet er kann keine Fließkommazahlen speichern wie z.B. 3.14.

Man verwendet int zum Speichern von ganzzahligen Werten zwischen -2147483648 und 2147483647, bzw. als unsigned int Werte von 0 bis 4294967295.
Die exakten minimalen und maximalen Werte können bei (eher exotischen) Computern abweichen, die exakten Werte können mit den Konstanten</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:integer&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:integer</title>
        <link>http://update.proggen.org/doku.php?id=c:type:integer&amp;rev=1663868367</link>
        <description>Integer-Datentypen

Die Grunddatentypen

Die wichtigsten Datentypen Die wichtigsten Datentypen in C sind char, short und long int

Ein char ist ein ein Byte großer Speicher, in dem eine Zahl von -128 bis 127 gespeichert werden kann oder auch ein ASCII-Zeichen.

short hingegen ist 2 Bytes groß und kann eine Zahl von -32768 bis 32767 aufnehmen.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:long&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:long</title>
        <link>http://update.proggen.org/doku.php?id=c:type:long&amp;rev=1663868367</link>
        <description>Long Int

Ein Long Int entspricht 4 Bytes und zählt zu den integeren  Datentypen, das bedeutet er kann keine Fließkommazahlen speichern wie z.B. 3.14.

Man verwendet long int zum Speichern von ganzzahligen Werten zwischen -2147483648 und 2147483647, bzw. als</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:short&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:short</title>
        <link>http://update.proggen.org/doku.php?id=c:type:short&amp;rev=1663868367</link>
        <description>Short

Ein Short entspricht 2 Bytes und zählt zu den integeren  Datentypen, das bedeutet er kann keine Fließkommazahlen speichern wie z.B. 3.14.

Man verwendet short zum Speichern von kleineren, ganzzahligen Werten zwischen -32768 und +32767, bzw. als</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:sidebar&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:sidebar</title>
        <link>http://update.proggen.org/doku.php?id=c:type:sidebar&amp;rev=1663868367</link>
        <description>Wiki

	*  Startseite
	*  C-Tutorial
	*  Datentypen

Community

	*  Forum
	*  C/C++ Forum

Datentypen

Zählbare

	*  Grundlagen
	*  char
	*  short
	*  int
	*  long

Fließkomma

	*  Grundlagen
	*  float 
	*  double

Datenstrukturen

	*  Arrays
	*  Strukturen
	*  Union
	*  Enumerationen

Attribute

Speicherklassen

	*  extern
	*  static
	*  auto
	*  register

Typqualifizierer

	*  const
	*  volatile
	*  restrict</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:start&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:start</title>
        <link>http://update.proggen.org/doku.php?id=c:type:start&amp;rev=1663868367</link>
        <description>Grundlegende Datentypen

	*  Integer: Zählbare Zahlen
	*  Floats: gebrochene Zahlen

konkrete Datentypen

Integer

	*  char, Mindestens 8 Bit, z.B. ASCII-Zeichen / Buchstaben
	*  short, Mindestens 16 Bit, z.B. Unicode
	*  int
	*  long int

Fließkommazahlen

	*  float 
	*  double

zusammengesetzte Datentypen</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:struct&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:struct</title>
        <link>http://update.proggen.org/doku.php?id=c:type:struct&amp;rev=1663868367</link>
        <description>Strukturen

Mit Strukturen kann man aus mehreren vorhandenen Datentypen neue Datentypen definieren. Doch wozu können wir so etwas brauchen? Ein einfaches Beispiel sollte dies verdeutlichen:

Für eine Bank sollen wir ein einfaches Programm zur Verwaltung der Konten ihrer Kunden schreiben. Dabei hat jeder Kunde einen Vor- und einen Nachnamen, eine Kontonummer und einen Kontostand.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:typedef&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:typedef</title>
        <link>http://update.proggen.org/doku.php?id=c:type:typedef&amp;rev=1663868367</link>
        <description>Typedef

Das Schlüsselwort typedef kann uns, dem Programmierer, viel (Schreib)Arbeit ersparen.
Es ist möglich, eigene Typen zu definieren und sie im Code dann ganz normal wie Standardtypen zu verwenden.

Das Ganze ist am besten an einem Beispiel erklärt.
Nehmen wir an, wir haben eine Datenstruktur wie die folgende:</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:union&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:union</title>
        <link>http://update.proggen.org/doku.php?id=c:type:union&amp;rev=1663868367</link>
        <description>Unions

Unions gleichen im Aufbau zunächst Strukturen. Im Gegensatz zu Strukturen, werden die Daten jedoch nicht hintereinander abgelegt, sondern alle auf die gleiche Stelle gelegt. Das bedeutet, dass ein Datensatz, den anderen überschreibt!

Das mag im ersten Moment sinnfrei klingen, es gibt jedoch sinnvolle Anwendungen für Unions.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=c:type:unsigned&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>c:type:unsigned</title>
        <link>http://update.proggen.org/doku.php?id=c:type:unsigned&amp;rev=1663868367</link>
        <description>verschoben nach unsigned</description>
    </item>
</rdf:RDF>
