Hey Sup Forums

Hey Sup Forums,

Was looking to start programming and decided on C++. I was trying to find the best way to learn it, but then heard all online resources are shit. I heard textbooks were better.

Anyways, what is the best method? Any recommended material? Thanks.

Other urls found in this thread:

stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
projecteuler.net/
codegolf.stackexchange.com/
codingame.com/
codereview.stackexchange.com/
cplusplus.com/doc/tutorial/
studytonight.com/cpp/
twitter.com/NSFWRedditVideo

Accelerated C++ and C++: A Beginner's Guide are good to start with.

You're going to be told that C++ is a shit language because Sup Forums is 99% contrarian faggots who've never actually had a job before.
C++ is fine, it is however a big and complex language, and you'll have to put in effort if you want to actually understand it and write decent code.

>Was looking to start programming and decided on C++.
May be a bad choice, C++ is big and complicated and has many confusing pitfalls for beginners.

Is it best to lean C and then learn C++? Or should I just not bother with C

Learn C first. C++ has morphed into a hideous unreadable language over the past decade. It's kind of like how we got from Windows 2000 to Windows 10.

Thank you

>You're going to be told that C++ is a shit language
It is a shit language. The problem is that we don't really have anything better right now.

No.
Learn C if you want to program in C or are interested in systems engineering, security, or anything that uses C.
C and C++ are not the same language. Don't listen to , it's bullshit.

You should know C, but you should also not write C++ as if you were writing C.
It's just important to understand what your C++ abstractions are really made out of.

Learning C as a stepping stone to get into C++ is a bad idea though. It's what I did and I wouldn't recommend it.
You can understand C++ without having a C background.

C++ IS shit. But that doesn't mean you shouldn't learn it.

How is it shit?

decades and decades of legacy shit

What are some good opposing languages then?

Just learn C++.

Learn both C and C++

...

You shouldn't have asked here. Nobody knows what the fuck they're talking about.
If anything, ask /sci/. Your thread probably won't get much attention amidst the IQ shitposting, but at least they're halfway decent at programming.

Incredibly complex grammar and syntax for no great reason. Duplicate features with C. That awful #include system. Undefined behavior. Horrible and again needlessly complex type system.

Basically it's a language that has grown too big and for too long.

Just use C.

You should learn Rust, it's safe and faster than C++. Firefox will soon be rewritten in Rust entirely.

And then there's this retard.

will it start being good again?

>a language that has grown too big and for too long
>Just use C
t. has never participated to any large project in his life

For books :
> Type "books c++" on duckduckgo
> Click on the first result
> stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
> Wow

i suggest you to read books, read c++ code (github.com), write codes...
you can also try to do programming puzzles. Here's some urls :
projecteuler.net/
codegolf.stackexchange.com/
codingame.com/

When you finish a code, you can post your code on website like codereview.stackexchange.com/ to receive criticism.

...

>anything written in Rust
>good

I want to do the same as op, but I don't have the resources to purchase textbooks and even my monitor is a pretty shitty low res crt monitor so reading textbooks on my computer is a pain in the ass. Would reading on my smart phone be any good?

I'm not a pajeet just a dumb college drop out NEET.

What purpose does it objectively serve to know C before C++ if you're not going to do low level programming?

bump

>$0.03 deposited to your Mozilla Outreach account!

ditch C, learn Java :D

Thanks Rajesh

I had started learning a while back. I found some pdf that was basically a textbook, but that emphasized exercises as you learned. It was pretty good. Found out on tpb btw, I think it had "C++" and "Tutorial(s)" in the title.

>Rajesh
>Pajeet

do indian people really find this offensive?

makes your epeen bigger

It's not like C is strictly for low level programming. It's workable without weapons grade autism. Good if you want something that goes fast, just pop up your hacker's delight on the next window.

Why is C better for hacking?

>>That awful #include system. Undefined behavior.
>complains that C++ is shit because of stuff it inherited from C
>recommends C instead which has the same issues
?????

Learn HTML then assembly, then finally consolidate your knowledge with PHP

Because C++ standard library sometimes isn't sufficient replacement for the C standard library. It's trying, and "modern C++" shills will tell you that you will never have to know anything from C, but that's simply not true. And if you know what C++ is build from, it's much easier to understand stuff.

Some libraries are written in C in a way that let you use it in C++.
A lot of books start with C because C is smaller and you learn to work with pointers.
As a programmer, you need to learn how to work with the heap and the stack and understand how the basics work so you can write with a higher level of abstraction.

But people here are horrible at communication, learning programming != learning a programming language.
The language is a tool you use to do programming, if you spend too much time on the tool and too little on learning programming, every language is shit.
C++ is fine as a beginning language, stick with it. It forces you to learn different programming styles, data structures, low level and high levels of abstraction etc.
Something like cout is lower level than printf which can be good and bad at the same time and learning everything about cout might not be relevant for a beginner, all you need to know is the basic syntax and how to make

this is the most retarded thread I have ever seen on this website

start here:
cplusplus.com/doc/tutorial/
studytonight.com/cpp/

>Incredibly complex grammar and syntax for no great reason.
Having strict rules for the syntax makes it a lot easier to learn.
Short hand can be confusing for beginners though.
>Duplicate features with C.
Oh the horror.
>That awful #include system.
Which is not horrible at all.
Having a header and a source file means I can read exactly what I need based on a file rather than scrolling through a mess of a document.
Headers have documentation and declarations, source files have implementation.
>Undefined behavior.
Not as big a problem as people make it out to be.
>Horrible and again needlessly complex type system.
Good for beginners and people who need to know how the data is stored and great for the programmer who joins a project and needs to learn how the project works.

> brainlet
OOP is stupid
> brain
OOP is essential for large projects
> enlightened
OOP is for large groups of retards
> awakened
how I transcribe my proofs is irrelevant

>First Language
>Not Python
pick one

But, seriously; everyone and their dogs recommends Python as the first language everyone learns

C++ Primer is godtier.
Make sure is "C++ Primer", there is other book with a similar name but it's shit.

>that ol brain fires up
>decide maybe C is better
>no std::thread
>no std::string
>no std::async
>no function overloading
>no namespaces
>c++ has more work and support put into it by multiple compilers meanwhile MSVC only supports c89
Name 1 (one) good reason to use C over modern C++

>>no function overloading
C11 has "generic" macros that achieve the same thing. They're a bit boilerplatey but they also come without name mangling.

>> brainlet
>OOP is stupid
>> brain
>OOP is essential for large projects
>> enlightened
>OOP is for large groups of retards
>> awakened
>how I transcribe my proofs is irrelevant

idris, haskell, agda... OOP is bad for large projects

>meanwhile MSVC only supports c89
>Name 1 (one) good reason to use C over modern C++
When you're not using shit compiler on a shit OS.

So much for C's portability :^)

this

>>>/reddit/

You can use gcc on windows too, if you insist on using shit OS. Of course then you won't be able to use POSIX C libs, ... but those don't could as part of C anyway.

Good fucking luck you should learn C first.