1.But if you want to learn c++ for example, is better to go straight for c++ or start with C and progress to c++ ?
Definitely start with C. C++ really requires a working knowledge of C - unlike with Objective-C, where you simply don't need C to start developing 99% of the time (if you don't call functions not having an Obj-C wrapper), assuming you learn from a decent Obj-C book.
Note that I speak of starting to program as a complete newbie. For a newbie, without any knowledge of assembly, C is very hard to grasp. Objective-C, particularly if you don't want to understand reference counting at first (but use ARC all the time), is much more beginner-friendly.
After you've become proficient in Obj-C, you can (and definitely should!) learn C (and also the subtleties of Obj-C, including ref. counting). Then, you'll also be able to develop that missing 1%. This is, IMHO, the right order if one is a complete newbie. Start with the easier and only learn the harder, more complicated when you're already proficient in the former.
2. If someone want`s to learn web development it`s still better to learn c/c++ first for a better understanding ?
Definitely not. If you want to do some heavy server-side programming, learn Java (more specifically, J2EE). It's very widely used on the server side. (Let me know if you need book recommendations - as I teach J2EE, I've read all J2EE books and can compile a writeup of the strengths and weaknesses of each.)
Same stands for HTML5. For that, I don't think you should learn all the subtleties of CSS / JS separately prior to starting to read a HTML5 book. If you choose some great material to learn from and also choose some good books on Canvas (I personally recommend the book Core HTML5 Canvas by Prentice Hall), you'll learn CSS / JS alongside HTML5 programming.
Is there any good known books for C/C++ ? (besides the c++ Stroustrup book)
I don't recommend the Stroustrup book for beginners at all. It's like the C++ version of Kernighan-Ritchie C book - a great reference material / second book but in no way should be used as a first one. C-wise, go with something much easier / more verbose; for example, Oreilly's
Head First C. While some of the Head First series are very shallow, I've found this book much more digestable than the Kernighan-Ritchie one. (Some of these books were so shallow that they weren't at all published after the betas; for example, the
Head First Android book. While I personally enjoyed the beta of that book, it indeed discusses very little - for example, IIRC, lists aren't discussed at all. Story of the cancellation at
http://support.oreilly.com/oreilly/...tm_medium=email&utm_source=reply_notification , where I also talked to the O'Reilly folks.)
Note that I don't recommend Thinking in C++ either. It's just not very beginner-friendly.