Case 3: Declare them as static (this is for structures and data types) in the library source file. Advantages: The user does not have to know about them Disadvantages: The user may not be able to access the data. Functions would have to return values and pointers.