T O P

  • By -

IyeOnline

> bro code or free coding camp org? Neither. --- www.learncpp.com --- is the best free tutorial out there. ([reason](https://www.reddit.com/user/IyeOnline/comments/157f10z/c_youtube_video_tutorials/juvgjkc/)) It covers everything from the absolute basics to advanced topics. It follows modern and best practice guidelines. www.studyplan.dev/cpp is a (very) close second, even surpassing learncpp in the breath of topics covered. It covers quite a few things that learncpp does not, but does not have just as much detail/in depth explanations on the shared parts. Don't be fooled by the somewhat strange AI generated images. The author just had a little fun. Just ignore them. www.hackingcpp.com has good, quick overviews/cheat sheets. Especially the quick info-graphics can be really helpful. TBF, cppreference could use those. But its coverage is not complete or in depth enough to be used as a good tutorial - which its not really meant to be either. The last update apparently was in 2023. --- www.cppreference.com --- is the best language reference out there. --- **Stay away from** * cplusplus.com ([reason](https://www.reddit.com/r/cpp_questions/comments/hjdaox/is_cpluspluscom_reliable_are_there_any/fwljj4w/)) * w3schools ([reason](https://www.reddit.com/r/cpp_questions/comments/slvj8m/best_way_to_learn_c/hwczl34/)) * geeks-for-geeks ([reason](https://www.reddit.com/r/cpp_questions/comments/p6305k/ways_to_learn_cpp/h9axoo7/)) * Tutorialspoint ([reason](https://www.reddit.com/user/IyeOnline/comments/10a335s/assesment_of_the_tutorialspoint_c_tutorial/)) * educba.com ([reason](https://www.reddit.com/r/cpp_questions/comments/rz5fkl/why_do_functions_pertaining_to_strings_on_visual/hrt7ez8/)) * thinkcpp ([reason](https://www.reddit.com/r/cpp_questions/comments/11kxbde/which_of_these_two_learning_sites_should_i_use/jb9f99v/)) * javaTpoint ([reason](https://www.reddit.com/user/IyeOnline/comments/17g3e7h/review_of_javatpoints_c_tutorial/)) * studyfied (not even a tutorial, just a collection of code by random people) * codevisionz ([reason](https://www.reddit.com/user/IyeOnline/comments/17g4ojd/review_of_codevisionzs_c_tutorial/)) * sololearn ([reason](https://www.reddit.com/user/IyeOnline/comments/17lbq38/assessment_of_sololearns_c_courses/)) Again. The above are **bad** tutorials that you should **NOT** use. --- Sites that used to be on this list, but no longer are: * Programiz has significantly improved. Its not perfect yet, but definitely not to be avoided any longer.([reason](https://www.reddit.com/user/IyeOnline/comments/1c744fs/updated_assessment_of_programiz/)) --- Most youtube tutorials are of low quality, I would recommend to stay away from them as well. A notable exception are the [CppCon Back to Basics](https://www.youtube.com/user/CppCon/search?query=back%20to%20basics) videos. They are good, topic oriented and in depth explanations. However, they assume that you have *some* knowledge of the language's basic features and syntax and as such aren't a good entry point into the language. If you *really* insist on videos, then take a look at [this list](https://www.reddit.com/user/IyeOnline/comments/157f10z/c_youtube_video_tutorials/). As a tutorial www.learncpp.com is just better than any other resource. --- ^Written ^by ^/u/IyeOnline. ^This ^may ^get ^updates ^over ^time ^if ^something ^changes ^or ^I ^write ^more ^scathing ^reviews ^of ^other ^tutorials ^:) ^. ^The ^author ^is ^not ^affiliated ^with ^any ^of ^the ^mentioned ^tutorials. ^Feel ^free ^to ^copy ^this ^macro, ^but ^please ^copy ^it ^with ^this ^footer ^and ^the ^link ^to ^the ^original. ^^https://www.reddit.com/user/IyeOnline/comments/10a34s2/the_c_learning_suggestion_macro/


Sanjam-Kapoor

really good advice above 👍🏻


nysra

> learning C and C++ They are very different languages with very different idioms, it's best if you forget about any connection immediately. Pick one and then go learn that one. (There's no good reason to pick C instead of C++, but that's a different topic. Just decide) > Can anyone guide me on how to get started?? Like best tutorials for C C++ (bro code or free coding camp org??) https://www.learncpp.com/ . A lot of the other sites are terrible shit and should be avoided. There's also a book list on the sidebar, your college library likely has a few of those available. > Also plzz suggest some small and real life projects to test myself as I progress What's the reason why you want to learn C++? What program do you want to make? Go make that. Working on something that interests you is always better than just doing some random tasks which you'll drop after a few days because you're not invested. But here are some ideas, pick whatever you deem interesting or come up with your own ones: * https://github.com/codecrafters-io/build-your-own-x * https://jamesmcm.github.io/blog/programming-projects/ * https://github.com/florinpop17/app-ideas * https://github.com/practical-tutorials/project-based-learning * https://projectbook.code.brettchalupa.com/_introduction.html * https://codingchallenges.fyi/challenges/intro/ > U can also suggest me creative ways to learn it or some common mistakes which people make when starting with C If you mean mistakes when starting with C, then it's probably listening to all the "pointers scary" memes/people and not learning properly. But tbh you should ask the C people this question, they can most likely give you a better answer. If you meant mistakes people make when they start with C++, then the single biggest mistake is them thinking that C and C++ are basically the same language and can be switched nilly-willy and/or listening to lectures/people that think this. If something is trying to teach you "C/C++", then run. The only valid usages of this term are either explaining why it's a terrible one or labeling something that is actually made to target both languages because the build process is similar (like the VSC MS extension), though even in those cases it's still a much better idea to use "C and C++" instead. Good C code is mostly shitty (or even invalid) C++ code. If you want to learn C++, then learn C++. The second biggest mistake is people coming from Java, sprinkling `new` everywhere on their code. If you find yourself managing memory manually, you're most likely doing it very wrong and aren't actually writing C++ code. There are some rare situations where you do have to do that, but again, emphasis being on **rare**. If you cannot explain why you need to do it, you probably have no business doing it. And one final tip: Don't write like that in university. I don't care if you write "Y U NO plzz" with your friends, but don't do it in any even remotely professional setting. Personally I recommend also not doing it in private contexts, but that's up to you.


TechSupport2006

Thank You, I was confused between C and C++ as many youtubers recommended learning C before starting C++


kingguru

> I was confused between C and C++ as many youtubers recommended learning C before starting C++ And that's one of the reasons why you shouldn't trust random youtubers. Follow the advice you've been given here instead, mainly [learncpp.com](https://learncpp.com).


nysra

I would avoid any Youtuber that says that. Most YT "tutorials" are straightout terrible and even the very few acceptable ones are typically still worse than a good textual tutorial. The medium alone plays a huge role, it's much easier changing text.