Keyword typedef provides a mechanism for creating synonyms (or aliases) for previously defined data types. Names for structure types are often defined with
typedef to more readable type names. For example, the statement
typedef Card *CardPtr;
defines the new type name
CardPtr as a synonym for type
Creating a new name with
typedef does not create a new type;
typedef simply creates a new type name that can then be used in the program as an alias for an existing type name.