learning c\C++ from ground up can be generally divided into 3 parts,
1.learning the data tyes, simple constructs like functions and structures and using pointers
2.learning various data structures
3.getting hang of OOP concept of programming.
first thing first, no need of going for C, as C++ is just and extension of C and u would have to learn it while learning C++ itself.
for starting C++, u can take any simple primer stuff.check wiley publications for it.they are best for technical books.i can't recommend any primer because basically all are same (to me)
one i know of and recommended is "the C++ primer" by sams publishing.
this book starts from basic and focuses on hands on learning.
after that, u need a advanced book and a refrence. the holy grail of C++ programming is "The C++ programming language" by Bjarne Stroustrup.
what's better than the book by the maker of the language itself!
after this, try your hands on a nice big program.using all u learnt.
if u want to divulge further, u need to learn data structures,
a good book to start would be "C++ unleashed" by sams publishing.
for compiler, i would recommend
borland 5.5, it went free quite around 2000.
it comes with all of borland's libraries that are soo important in classroom teachings.
(that's why classrooms still use TurboC, a ancient DOS based compiler/editor, but by borland too. went free around 94)
the problem with dev-cpp is that it uses gcc/g++ compiler,(open source, GNU) and hence is quite cumbersome.