C differs from many other compile time typed languages in that it allows implicit type conversions. The reason for the warning is that you lose precision. This way the compiler won't complain, but it's fairly clear from reading the code that something ugly is done. A first step towards making our own types is to set our own name to types. An enumeration type The easiest type to define is an enumeration.
Enumerations is a way of setting names to integer values.
The compiler might warn for it, to hint that this might not be what you wanted, but it is legal. This will work regardless of which day of the week the enumeration is started with. In Sweden, the lights for pedestrians are either a red standing man, or a green walking man. Structure types New types can be created by using already defined types. One such way is to define what is known as structs.