This is a guide for someone already familiar with these concepts, but needs a quick reference to either brush up on the subjects or learn more detail, without a million "hello world" examples.
I started out keeping notes as i learned new subjects and, as my current situation calls for, making it easier for me to study for interviews. I have a terrible memory, so i used my notes to remind me of syntax as i work on projects, or the night before an interview, i would skim through my notes so it will all be fresh in my head. I finally decided to start taking my notes and formatting my them into something more coherent and filling in the gaps with details of the subject matter i was not familiar with or i just never had to use before. Hopefully others will also find these useful. I am going to be writing quick guides to other subjects, such as POSIX threading, network programming, etc.
Please feel free to contact with anything about these notes. especially any technical errors and formatting suggestions. I wrote this in a way that i find useful and easy to understand, but i will be more than happy to make any changes to make it more universally useful.