Yurttas/PL/OOL/Cplusplus/F/02/05/02/03/union 01.cpp

From ZCubes Wiki
Jump to navigation Jump to search
 1/*
 2   Copyright(C) 1998
 3   All Rights Reserved. Salih Yurttas, ZCubes, BitsOfCode Software Systems, Inc..
 4
 5   Permission to use, copy, modify, and distribute this
 6   software and its documentation for EDUCATIONAL purposes
 7   and without fee is hereby granted provided that this
 8   copyright notice appears in all copies.
 9 
10   date   : January 1, 1998.
11   author : Salih Yurttas.
12
13   union_01.cpp
14*/
15
16
17#include <iostream>
18
19using namespace std;
20
21int main(int argc, char* argv[]) {
22
23  union u { char c;
24            int a[4];
25          };
26
27  union u u0;
28
29  cout << "->  char u0.c : ";
30  cin >> u0.c;
31
32  cout << endl;
33  cout << "u0.c = " << u0.c << endl;
34  cout << endl;
35
36  for(int i=0; i<4; ++i)
37    cout << "u0.a[" << i << "] = " << u0.a[i] << endl; // not any use and dangerous!
38  cout << endl;
39
40  for(int i=0; i<4; ++i) {
41    cout << "->   int u0.a[" << i << "] : ";
42    cin >> u0.a[i];
43  }
44
45  cout << endl;
46  cout << "u0.c = " << u0.c << endl; // not any use and dangerous!
47  cout << endl;
48
49  for(int i=0; i<4; ++i)
50    cout << "u0.a[" << i << "] = " << u0.a[i] << endl;
51
52}