[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y ] [Search | Free Show | Home]

How does one go about learning C?

This is a blue board which means that it's for everybody (Safe For Work content only). If you see any adult content, please report it.

Thread replies: 18
Thread images: 1

File: 1475028572678.gif (1MB, 499x499px) Image search: [Google]
1475028572678.gif
1MB, 499x499px
How does one go about learning C?
>>
this is python board, ask /g/
>>
>>9036623
The C Programming Language is well-written. C is a small language so that's all you need.
>>
>>9036626
>>9036631
Thanks
>>
>>9036623
K&R 2nd es
C Programming: A Modern Approach, 2nd Edition
>>>/g/dpt
>>
C is a small language that can be learned in a week or so. Learning C doesn't mean that you'll be able to use it to its full potential of course, for that you'll need years because it's such a broad collection of topics. I mean, is learning a merge sort "learning C" or is it just learning the algorithm? If you think it's the former, then there's no single path to learning it but there are plenty of resources. If you're satisfied with just the latter, read a book like the one previously recommended on this thread.
>>
>>9036631
There's a lot more to C than what is in K&R.
Take a look at this OP:
https://gustedt.wordpress.com/2016/11/25/modern-c-is-now-feature-complete/
>>
>>9036651
And by latter I mean of course that knowing the language doesn't mean you'll know any useful algorithms or software engineering practices or memory management etc etc.
>>
>>9036623
go outside, find your nearest community college/tertiary institute, apply
>>
>>9037486
what a useless fucking reply, and bumping with it nonetheless
>>
First I would read K&R. It is still the definitive guide to C, even though you would never use the style of declarations in there.

Second I would do CMU's 15-122, just reading through the pdfs and assignments so you understand what invariants are and how to write safe loops that do not overflow arrays, and programming with contracts. This course is done in C0 (C-nought) which is C with a garbage collector and interpreter so you can see instant results of say, array aliasing to see how the memory matches when you attempt to copy an array incorrectly. http://www.cs.cmu.edu/~15122/schedule.shtml

Third, I would do CMU's 15-213 which shows you C at the assembly level, so you can see exactly what is going on and truly understand pointer arithmetic, type casting ect. https://www.cs.cmu.edu/~213/schedule.html (click on 'old video' they are public). You also need to buy the book, CS:APP that goes with the course which you want the 3rd (64bit) version, and can get it used on Abe Books (or get the global version).

Fourth, you would want to read how to do modern C, in which you would never type 'int' or 'char' or anything like that.
https://matt.sh/howto-c

Finally, since you've done 15-213 you know about the CERT C standard and you would read it.
https://www.securecoding.cert.org/confluence/display/c/SEI+CERT+C+Coding+Standard

Congrats you can program in C now, optimize your programs, know the linker/compiler, gdb, valgrind ect, know how the program is running at the bare metal level, and know all the undefined behavior that can hang you. At this point I would recommend not ever using C and instead look at functional programming, verified algorithms, ie: modern & not 1970s leaky datastructures.
>>
>>9036623
get a compiler, find some tutorial sites online, start coding, make small changes in programs, see what happens, draw conclusions, rinse and repeat.
>>
>>9037489
>2021
congrats, you've learned C. what are you going to do with your resume that is absolutely blank of education and references? you have absolutely nothing to prove of your educational competency, and believe it or not, you aren't going to receive the opportunity to "show" your interviewer that you know a computer language, retard.
>>
>>9036623
>Learn C++17
>Then learn the tedious shit in C
>Resume using C++
>>
>>9037752
>what is github
>>
Why in the fuck would you want to learn C?
>>
>>9036623
First learn A, then learn B...
>>
>>9038492
Embedded systems. Also if you learn C, then learn other languages, you will have good programming habits from the start.

I like C primer plus 6th edition. A little lengthy but forever a good reference guide. The 5th edition is free online if you're too poor.
Thread posts: 18
Thread images: 1


[Boards: 3 / a / aco / adv / an / asp / b / bant / biz / c / can / cgl / ck / cm / co / cock / d / diy / e / fa / fap / fit / fitlit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mlpol / mo / mtv / mu / n / news / o / out / outsoc / p / po / pol / qa / qst / r / r9k / s / s4s / sci / soc / sp / spa / t / tg / toy / trash / trv / tv / u / v / vg / vint / vip / vp / vr / w / wg / wsg / wsr / x / y] [Search | Top | Home]

I'm aware that Imgur.com will stop allowing adult images since 15th of May. I'm taking actions to backup as much data as possible.
Read more on this topic here - https://archived.moe/talk/thread/1694/


If you need a post removed click on it's [Report] button and follow the instruction.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com.
If you like this website please support us by donating with Bitcoins at 16mKtbZiwW52BLkibtCr8jUg2KVUMTxVQ5
All trademarks and copyrights on this page are owned by their respective parties.
Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
This is a 4chan archive - all of the content originated from that site.
This means that RandomArchive shows their content, archived.
If you need information for a Poster - contact them.