1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
// Kapitel 9 - Programm 7 - SCHABL2.CPP
#include <stdio.h>
const int MAXGROESZE = 128;
template<class JEDER_TYP>
class Stapel
{
JEDER_TYP Array[MAXGROESZE];
int StapelZeiger;
public:
Stapel(void) { StapelZeiger = 0; };
void Lege(JEDER_TYP EinDat) { Array[StapelZeiger++] = EinDat; };
JEDER_TYP Nimm(void) { return Array[--StapelZeiger]; };
int Leer(void) { return (StapelZeiger == 0); };
};
char Name[] = "Johann Gottlieb Fichte";
int main(void)
{
int x = 12, y = -7;
float fl = 3.1415;
Stapel<int> intStapel;
Stapel<float> floatStapel;
Stapel<char *> charStapel;
intStapel.Lege(x);
intStapel.Lege(y);
intStapel.Lege(77);
floatStapel.Lege(fl);
floatStapel.Lege(-12.345);
floatStapel.Lege(100.01);
charStapel.Lege("Das ist Zeile 1");
charStapel.Lege("Das ist die zweite Zeile");
charStapel.Lege("Das ist die dritte Zeile");
charStapel.Lege(Name);
printf(" int-Stapel ---> ");
printf("%8d ", intStapel.Nimm());
printf("%8d ", intStapel.Nimm());
printf("%8d\n", intStapel.Nimm());
printf("float-Stapel ---> ");
printf("%8.3f ", floatStapel.Nimm());
printf("%8.3f ", floatStapel.Nimm());
printf("%8.3f\n", floatStapel.Nimm());
printf("\n Zeichenketten\n");
do
{
printf("%s\n", charStapel.Nimm());
} while (!charStapel.Leer());
return 0;
}
// Ergebnis beim Ausführen
//
// int-Stapel ---> 77 -7 12
// float-Stapel ---> 100.010 -12.345 3.141
//
// Zeichenketten
// Johann Gottlieb Fichte
// Das ist die dritte Zeile
// Das ist die zweite Zeile
// Das ist Zeile 1
|
Copyright © 1997, 1998, 2001-2005 Heinz Tschabitscher - Letzte Änderung 13. September 2005
Heinz Tschabitscher - | Datenschutz | Impressum - Kommentare, Kritik, Anregungen, Fragen?