Recommended Readings

book cover
Recommended Text (click on icon above for the publisher's website):
Computer Networks
A Systems Approach
5th Edition

Larry Peterson
Bruce Davie


on Makefiles. You can find many more using Google.
Here is a C language tutorial.
Here is a C++ tutorial.
The Beej's Guide to socket programming.

Other helpful links:

getopt: This helps in parsing command line options passed to your program.