Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
Vorwort des Gutachters
1 Einstieg in C
2 Das erste Programm
3 Grundlagen
4 Formatierte Ein-/Ausgabe mit »scanf()« und »printf()«
5 Basisdatentypen
6 Operatoren
7 Typumwandlung
8 Kontrollstrukturen
9 Funktionen
10 Präprozessor-Direktiven
11 Arrays
12 Zeiger (Pointer)
13 Kommandozeilenargumente
14 Dynamische Speicherverwaltung
15 Strukturen
16 Ein-/Ausgabe-Funktionen
17 Attribute von Dateien und das Arbeiten mit Verzeichnissen (nicht ANSI C)
18 Arbeiten mit variabel langen Argumentlisten – <stdarg.h>
19 Zeitroutinen
20 Weitere Headerdateien und ihre Funktionen (ANSI C)
21 Dynamische Datenstrukturen
22 Algorithmen
23 CGI mit C
24 MySQL und C
25 Netzwerkprogrammierung und Cross–Plattform-Entwicklung
26 Paralleles Rechnen
27 Sicheres Programmieren
28 Wie geht’s jetzt weiter?
A Operatoren
B Die C-Standard-Bibliothek
Stichwort

Jetzt Buch bestellen
Ihre Meinung?

Spacer
<< zurück
C von A bis Z von Jürgen Wolf
Das umfassende Handbuch
Buch: C von A bis Z

C von A bis Z
3., aktualisierte und erweiterte Auflage, geb., mit CD und Referenzkarte
1.190 S., 39,90 Euro
Rheinwerk Computing
ISBN 978-3-8362-1411-7
Pfeil 5 Basisdatentypen
Pfeil 5.1 Deklaration und Definition
Pfeil 5.2 Der Datentyp »int« (Integer)
Pfeil 5.3 Variablen verwenden
Pfeil 5.4 Der Datentyp »long«
Pfeil 5.5 Der Datentyp »long long«
Pfeil 5.6 Der Datentyp »short«
Pfeil 5.7 Ganzzahlige Typen mit vorgegebener Breite – <stdint.h>
Pfeil 5.7.1 <inttypes.h> (C99)
Pfeil 5.8 Die Gleitpunkttypen »float« und »double«
Pfeil 5.8.1 Gleitpunkttypen im Detail
Pfeil 5.8.2 »float« im Detail
Pfeil 5.8.3 »double« im Detail
Pfeil 5.8.4 long double
Pfeil 5.8.5 Einiges zu n-stelliger Genauigkeit
Pfeil 5.9 Numerische Gleitpunktprobleme
Pfeil 5.10 Komplexe Gleitpunkttypen – <complex.h>
Pfeil 5.11 Der Datentyp »char«
Pfeil 5.12 Nationale contra internationale Zeichensätze
Pfeil 5.13 Der Breitzeichen-Typ »wchar_t«
Pfeil 5.14 Multibyte-Zeichen
Pfeil 5.15 Boolescher Wert – <stdbool.h>
Pfeil 5.16 Vorzeichenlos und vorzeichenbehaftet
Pfeil 5.17 Limits für Ganzzahl- und Gleitpunktdatentypen
Pfeil 5.18 Der Typ »void«
Pfeil 5.19 Konstanten
Pfeil 5.19.1 Ganzzahlkonstanten
Pfeil 5.19.2 Gleitpunktkonstanten
Pfeil 5.19.3 Zeichenkonstanten
Pfeil 5.19.4 Stringliterale (Stringkonstante)
Pfeil 5.20 Umwandlungsvorgaben für formatierte Ein-/Ausgabe


Rheinwerk Computing - Zum Seitenanfang

5.3 Variablen verwenden topZur vorigen Überschrift

Wie Sie Datentypen in der Praxis verwenden, also deklarieren und mit Werten initialisieren können, soll jetzt grundsätzlich anhand des Datentyps int erläutert werden. Für andere Datentypen, die noch behandelt werden, gilt dies entsprechend. Sehen wir uns dazu ein Listing an:

/* deklarieren.c */
#include <stdio.h>

int main(void) {
   int a;    // Deklaration
   int b;
   int c;
   a = 5;    // Initialisieren
   b = 100;
   c = 12345;
   printf("Wert von int a=%d ,b=%d, c=%d\n", a, b, c);
   return 0;
}

Hier werden drei int-Variablen mit den Bezeichnern a, b und c deklariert. Die Auswahl der Bezeichner bleibt dabei Ihnen überlassen. In kleinen Programmbeispielen ist die Verwendung sogenannter sprechender Namen für Bezeichner nicht unbedingt erforderlich, dennoch empfehle ich Ihnen, aussagekräftige Namen (z. B. ZuFallsZahl, statt einfach nur z) zu verwenden. Damit behalten Sie bei größeren Projekten den Überblick.

Hier bekommt a den Wert 5, b den Wert 100 und c den Wert 12345 zugewiesen. Die Zuweisung eines Werts wird das Initialisieren einer Variable genannt. Den Wert einer Variablen übergibt man mit dem =-Operator (er wird auch Zuweisungsoperator genannt).

Folgende Schreibweisen sind dabei erlaubt:

int wert  = 5;                 // wert=5
int wert1 = 10, wert2 = 20;    // wert1=10 ,wert2=20

// wert1=nicht initialisiert, wert2=33
int wert1, wert2 = 33;

int wert1;
int wert2 = wert1 = 10;        // wert1=10, wert2=10

Jetzt folgt die Beschreibung der Ausgabe mit printf() (siehe Abbildung 5.1).

Sicherlich ist Ihnen %d im Formatstring aufgefallen. Das Prozentzeichen ist ein Formatzeichen. Der Compiler sieht jetzt nach, um welches Format es sich dabei handelt. Im Beispiel ist es das d (für dezimal). Sie können auch das Formatzeichen %i anstelle von %d benutzen. Für einige ist das leichter zu verstehen, da das i für Integer steht. Hiermit wird also eine Ganzzahl (int) ausgegeben.

Hinter dem Ende der Hochkommata befindet sich jetzt der Variablenname a. Damit wird der Wert von int a an der Position ausgegeben, an der sich das Formatzeichen %d befindet. Gleiches geschieht mit den anderen beiden int-Werten für b und c.

Die Initialisierung dieser Werte kann aber auch noch anders bewerkstelligt werden:

/* initialisieren.c */
#include <stdio.h>

int main(void) {
   int a=5;
   int b=100, c=12345;
   printf("Wert von int a=%d ,b=%d, c=%d\n", a, b, c);
   return 0;
}

Abbildung 5.1 Der Ablauf der Funktion »printf()«

Wie Sie hier sehen, kann die Wertzuweisung schon während der Deklaration vorgenommen werden. Es können auch alle Werte auf einmal zugewiesen werden, wie es bei int b und int c geschehen ist. Die Werte müssen mit einem Komma getrennt werden.

Wenn eine Variable nicht mit einem Wert initialisiert wurde und Sie diese dennoch ausgeben, ist die Ausgabe des Werts undefiniert. Das heißt, es ist nicht vorhersehbar, welcher Wert ausgegeben wird.

Erlaubte Bezeichner

Im Folgenden gehe ich nochmals detaillierter auf die erlaubten Bezeichner ein. Mit dem Begriff Bezeichner werden Namen für Variablen, Funktionen, Datentypen und Makros zusammengefasst. Damit Sie bei der Namensvergabe von Variablen oder (später) Funktionen keine Probleme bekommen, müssen Sie bei deren Angabe folgende Regeln beachten:

  • Ein Bezeichner darf aus einer Folge von Buchstaben, Dezimalziffern und Unterstrichen bestehen. Einige Beispiele:
    • var8, _var, _666, var_fuer_100tmp, VAR, Var
  • C unterscheidet zwischen Groß- und Kleinbuchstaben.
    • Var, VAr, VAR, vAR, vaR, var
    • Hierbei handelt es sich jeweils um verschiedene Bezeichner.
  • Das erste Zeichen darf keine Dezimalzahl sein.
  • Die Länge des Bezeichners ist beliebig lang. Nach ANSI-C-Standard sind aber nur die ersten 31 Zeichen von Bedeutung. Allerdings können viele Compiler auch zwischen mehr Zeichen unterscheiden.

Die reservierten Schlüsselwörter in C dürfen logischerweise auch nicht als Bezeichner verwendet werden. Folgende Schlüsselwörter sind in C reserviert:

auto  break  case  char  complex  const  continue  default
do  double  else  enum  extern  float  for  goto
if  imaginary  inline  int  long  register  restrict  return
short  signed  sizeof  static  struct  switch  typedef
union  unsigned  void  volatile  while

Die Schlüsselwörter, die hier nicht fett dargestellt wurden, sind erst bei den neueren Compilern (C99) vorhanden.



Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
  
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: C von A bis Z

 C von A bis Z
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchtipps
Zum Rheinwerk-Shop: C/C++






 C/C++


Zum Rheinwerk-Shop: Einstieg in C






 Einstieg in C


Zum Rheinwerk-Shop: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Rheinwerk-Shop: C++ Handbuch






 C++ Handbuch


Zum Rheinwerk-Shop: IT-Handbuch für Fachinformatiker






 IT-Handbuch für
 Fachinformatiker


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2009
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern