summaryrefslogtreecommitdiffstats
path: root/3.03.personenStruktur.cc
blob: 2bef438547dd27256b9133ce8c1941daf30eef32 (plain)
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
/*
 * =====================================================================================
 *
 *       Filename:  3.03.personenStruktur.cc
 *
 *    Description:  Personen as globel array
 *
 *        Version:  1.0
 *        Created:  23.04.2014 21:38:18
 *       Revision:  none
 *       Compiler:  gcc
 *
 *         Author:  Stefan Suhren (SSuhren), suhren.stefan@fh-swf.de
 *   Organization:  FH Südwestfalen, Iserlohn
 *
 * =====================================================================================
 */

#include	<cstdlib>
#include	<iostream>
#include	<iomanip>
#include	<fstream>
#include	<string>

using namespace std;

// ##### TYPE DEFINITIONS - LOCAL TO THIS SOURCE FILE #############
struct mitarbeiter{
	string identnummer;
	string nachname;
	string vorname;
	string abteilung;
	unsigned int durchwahl;
}; // ---------- end of struct mitarbeiter ----------

// ##### VARIABLES - LOCAL TO THIS SOURCE FILE ####################
const unsigned int MitarbeiterMax = 1000; // max. Anzahl Mitarbeiter
mitarbeiter ma[MitarbeiterMax];           // Feld mit Mitarbeiter-Beschr.
// ===  FUNCTION  ======================================================================
//         Name:  main
//  Description:  Reading and printing the personen.dat file
// =====================================================================================
int main ( int argc, char *argv[] ){

	string    ifs_file_name = "personen.dat";     // input  file name 
	ifstream  ifs;                                // create ifstream object 

	ifs.open ( ifs_file_name.c_str() );           // open ifstream 
	if (!ifs) {
		cerr << "\nERROR : failed to open input file " << ifs_file_name << endl;
		exit (EXIT_FAILURE);
	}
	
	int satz = 0;

	while ( ifs >> ma[satz].identnummer >> ma[satz].nachname >> ma[satz].vorname >> ma[satz].abteilung >> ma[satz].durchwahl ) {
		cout << "Person Nr." << satz+1 << "\n"
			 << "\t ID:        " << ma[satz].identnummer << "\n"
			 << "\t Nachname:  " << ma[satz].nachname    << "\n"
			 << "\t Vorname:   " << ma[satz].vorname     << "\n"
			 << "\t Abteilung: " << ma[satz].abteilung   << "\n"
			 << "\t Durchwahl: " << ma[satz].durchwahl   << "\n";
		satz++;
	}

	ifs.close ();                                 // close ifstream 
	return EXIT_SUCCESS;
}	// ----------  end of function main  ----------