- Two Records: Identical structure, Dissimilar field names
struct time
{
int hour;
int minutes;
int seconds;
};
struct date
{
int day;
int month;
int year;
};
time now = {18, 30, 0};
date today = {1, 1, 2000};
today = now; // Structure-Compatible, Hard to Implement
- Two Arrays: Identical size, Dissimilar subscript range
ActualParameter: array [0..99] of Integer;
FormalParameter: array [100..199] of Integer;
- Two Enumerated Types: Same ordinality, Different literals
enum weekday {Monday, Tuesday, Wednesday, Thursday, Friday};
enum fruit {Apples, Oranges, Grapes, Peaches, Nectarines};
weekday today;
fruit dessert;
today = Grapes;
dessert = Friday; // Compatible in C++, Hard to Implement
- Self Referencing Structures
struct employee
{
char *name;
char social_security_num[10];
float salary;
int years_with_company;
employee * next; // Reference to employee
};