Here are the 5 ways in which you can create a custom data types in C:
1) Structure: A structure is a way of grouping variables under one name.
2) Bit field: It is a slight variation structure where you can access individual bits.
3) Union: It is a memory location which can be shared by two or more different variables.
4) Enumeration: It is a list of named integer constants.
5) typedef: It is a keyword used for defining a new name for existing type.