Professional Documents
Culture Documents
C Structures, Unions, Bit Manipulation and Enumerations
C Structures, Unions, Bit Manipulation and Enumerations
Introduction
• Structures—sometimes referred to as aggregates—are
collections of related variables under one name.
Introduction
• typedefs—for creating aliases for previously defined data types.
Programming Concept 3
University of Sebelas Maret (UNS)
Structure Definition
Programming Concept 4
University of Sebelas Maret (UNS)
Self-Referential Structures
Programming Concept 5
University of Sebelas Maret (UNS)
Programming Concept 6
University of Sebelas Maret (UNS)
Programming Concept 7
University of Sebelas Maret (UNS)
Example
Programming Concept 8
University of Sebelas Maret (UNS)
Initializing Structures
Programming Concept 9
University of Sebelas Maret (UNS)
Example
Programming Concept 10
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 11
University of Sebelas Maret (UNS)
typedef
Programming Concept 12
University of Sebelas Maret (UNS)
Example
Programming Concept 13
University of Sebelas Maret (UNS)
Programming Concept 14
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 15
University of Sebelas Maret (UNS)
Unions
• A union is a derived data type—like a structure—
with members that share the same storage space.
Unions Declaration
Programming Concept 17
University of Sebelas Maret (UNS)
Example
Programming Concept 18
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 19
University of Sebelas Maret (UNS)
Bitwise Operators
• The bitwise operators are bitwise AND (&), bitwise
inclusive OR (|), bitwise exclusive OR (^; also
known as bitwise XOR), left shift (<<), right shift
(>>) and complement (~).
Programming Concept 20
University of Sebelas Maret (UNS)
Bitwise Operators
Programming Concept 21
University of Sebelas Maret (UNS)
Programming Concept 22
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 23
University of Sebelas Maret (UNS)
Programming Concept 24
University of Sebelas Maret (UNS)
Programming Concept 25
University of Sebelas Maret (UNS)
Programming Concept 26
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 27
University of Sebelas Maret (UNS)
Programming Concept 28
University of Sebelas Maret (UNS)
Programming Concept 29
University of Sebelas Maret (UNS)
Programming Concept 30
University of Sebelas Maret (UNS)
Programming Concept 31
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 32
University of Sebelas Maret (UNS)
Programming Concept 33
University of Sebelas Maret (UNS)
Programming Concept 34
University of Sebelas Maret (UNS)
Bit Fields
Programming Concept 35
University of Sebelas Maret (UNS)
Programming Concept 36
University of Sebelas Maret (UNS)
Programming Concept 37
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 38
University of Sebelas Maret (UNS)
Enumeration Constants
Programming Concept 39
University of Sebelas Maret (UNS)
Using Enumerations
Programming Concept 40
University of Sebelas Maret (UNS)
Execution Result
Programming Concept 41
University of Sebelas Maret (UNS)
Thank you….
Programming Concept 42
University of Sebelas Maret (UNS)
Q&A
Programming Concept 43