In the previous hour's lesson you learned how to store data of different types into structures. In this hour you'll learn another way to collect differently typed data items by using unions. You'll learn about the following topics in this lesson:
How to declare and define unions
How to initialize unions
The differences between unions and structures
Nested unions with structures
Manipulating the bit field with struct
Summary
- A union is a block of memory that is used to hold data items of different types.
- A union is similar to a structure, except that data items saved in the union are overlaid in order to share the same memory location.
- The size of a union is the same as the size of the largest member in the union.
- The union keyword has to be used to specify the union data type in a union declaration or a union variable definition.
- To reference a union member, you can use either a dot operator (.) to separate the union name and the union member name or an arrow operator (->) to separate the name of a pointer that points to the union and the union member name.
- The ANSI C standard allows you to initialize a union by assigning the first union member a value.
- You can access the same memory location with different union members.
- To make a structure flexible, you can nest a union inside a structure so that the structure can hold different types of values.
- You can define the bit fields, which can be a single bit or any number of bits up to the number of bits in an integer, by using the struct data type.
- 38 views