![]() ![]() | |

struct name
{ type1 Member1;
type2 Member2;
typeX Memberx;
}copyname,listname[x];
|
| Example 1 |
struct Games
{char Name[80];
char Rating;
BOOL Played;
long NumberOfKills;
}; |
| Example 2 |
struct Games
{ char Name[80];
char Rating;
BOOL Played;
long NumberOfKills;
}Unreal,Blizzard[3];
typedef Games* Gamesptr;
|
| Example 3 |
void main()
{ Games Unreal;
Gameptr GamesList;
GamesList = new Games[30];
...
...
delete GamesList;
} |
| Example 4 |
struct
{char Name[80];
char Rating;
BOOL Played;
long NumberOfKills;
}Data,DataList[90];
|
| An Unnamed Struct Type |
void main()
{ Unreal.Rating=1;
strcpy(Unreal.Name,"Unreal");
Unreal.Played=True;
Unreal.NumberOfKills=1000;
Games Quake;
Quake.Rating=2;
strcpy(Quake.Name,"Quake");
Quake.Played=True;
Quake.NumberOfKills=10;
GamesList[0]->Rating=1;
strcpy(GamesList[0]->Name,"WarCraft2");
GamesList[0]->Played=False;
GamesList[0]->NumberOfKills=0;
} |
void main()
{ Games game1,game2;
game1.Played=1;
strcpy(game1.Name,"Roadwarriors");
game1.Rating=4;
game2=game1;
} |
| Aggregate Equality Operation |
struct Games
{BOOL LikedIt;
}game1;
struct OtherGames
{BOOL LikedIt;
};
void main()
{ Games game2;
OtherGames game3;
game1.LikedIt=1;
game2=game1; Legal
game3=game2; ILLEGAL!
game3.LikedIt = game2.LikedIt;Legal
} |
| Types MUST be the same! |