Learn more about:
1. macro definitions (#define, #undef),
2. Conditional inclusions (#ifdef, #ifndef, #if, #endif, #else and #elif),
3. Line control (#line),
4. Error directive (#error),
5. Source file inclusion (#include),
6. Pragma directive (#pragma),
7. Predefined macro names,
8. Open a file,
9. Closing a file,
10. Text files,
11. Checking state flags,
12. get and put stream pointers,
13. tellg() and tellp(),
14. seekg() and seekp(),
15. Binary files,
16. Buffers and Synchronization