Live data from Hacker News

Essential C

cslibrary.stanford.edu

51–57 of 57 posts

Re: Essential C

#51
post #35

Earlier quoted context omitted.

When i was about 13 or 14 years old, i read Brian Kerninghan & Dennis Ritchie's "The C Programming Language". This book (by the language creators) is a classic and does an excellent job of explaining the C language. I learnt C by reading that book and experimenting writing code. It is a very good book and it should be easily available.

A lot of people love this book, but I kept getting stuck because it seems like half the time it assumes prior programming knowledge. I only made it a few chapters in, but I don't think they do a great job of explaining much of anything to a beginner. I'm planning on attempting to read it again after I finish Harvard's CS50. Maybe I just need a lot of hand-holding, but this course seems to do a much better job of expl…

K&R was written for programmers, so it's completely unsurprising you would have trouble reading it while learning to program.

Working your way through it after taking CS50 is actually a fantastic idea.

Re: Essential C

#52

Earlier quoted context omitted.

What portability do you need, specifically, beyond C99?

Until recently, even MSVC was C89. I believe they only added some C99 features because the C++11 standard required them (in VS2013, I believe), and full C99 support only came with VS2015.

Yep, their focus is on C++ compatibility.

They have changed their view regarding C, but the actual work is customer driven.

https://www.reddit.com/r/cpp/comments/75q5wc/visual_studio_2...

Re: Essential C

#53
Thanks for this! I've been searching for something like this for a while. So I'll add it to my bookmarks. As I'm currently using Beej's Guide to C to learn and this one looks a bit nicer. Also it's by stanford so that's cool.

Re: Essential C

#55
post #8

Earlier quoted context omitted.

Word of advice. Don't learn any of the OOP stuff in C++, many learned it, but later they had to unlearn it. Search for data oriented design.

That’s as bad as saying OOP is the cure for all your problems! Learn all the paradigms and use them where they’re best used, don’t shun any or advise someone against it just because you’ve had a bad experience.

I am frankly getting sick of the notion "use the right tool for your problem", when discussing programming paradigms. No, programming paradigm is not a tool. Programming language is a tool, data structures are tools and algorithms are tools. I don't believe there exists such and such problem, that can only be solved/expressed in OO way and the only true way is to do it in OO way or the best way if you prefer.

Re: Essential C

#57
post #35

Earlier quoted context omitted.

A lot of people love this book, but I kept getting stuck because it seems like half the time it assumes prior programming knowledge. I only made it a few chapters in, but I don't think they do a great job of explaining much of anything to a beginner. I'm planning on attempting to read it again after I finish Harvard's CS50. Maybe I just need a lot of hand-holding, but this course seems to do a much better job of expl…

>but I kept getting stuck because it seems like half the time it assumes prior programming knowledge Yes, to be honest, C is not good as a "first" programming language. If i can give you a suggestion, it would be: Start learning Python, which is a good "first language to learn", and then try this book. You will find that jumping from Python to C there will be two strong differences: a) C is a statically typed languag…

I have had a great success teaching a kid programming using javascript and plain HTML. There are numerous advantages to this approach.
Post reply on HN