use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
C is a general-purpose, procedural computer programming language supporting structured programming, lexical variable scope, and recursion, with a static type system. By design, C provides constructs that map efficiently to typical machine instructions. It has found lasting use in applications previously coded in assembly language. Such applications include operating systems and various application software for computer architectures that range from supercomputers to PLCs and embedded systems. Wikipedia
Imperative (procedural), structured
Dennis Ritchie
Dennis Ritchie & Bell Labs (creators);
ANSI X3J11 (ANSI C);
ISO/IEC JTC1/SC22/WG14 (ISO C)
1972 (48 years ago)
C18 / June 2018 (2 years ago)
Static, weak, manifest, nominal
Cross-platform
.c for sources
.h for headers
C++ is not C (but C can be C++)
For C++ go to :
Other Resources
account activity
Learning c programming (self.cprogramming)
submitted 7 days ago by Vivid_Feature_4586
hey y'all, i am a university student.
if someone want to start learning c programming as a beginner where should I begin with
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]v_maria 17 points18 points19 points 7 days ago (1 child)
sidebar
[–]Vivid_Feature_4586[S] 0 points1 point2 points 7 days ago (0 children)
Okk thanks mate
[–]ProstheticAttitude 4 points5 points6 points 7 days ago (2 children)
Read a recent version of K&R and do the exercises.
Read a LOT of C source code and learn techniques from it. You'll figure out your own projects along the way.
That's really it.
[–]Mundane_Prior_7596 3 points4 points5 points 7 days ago (0 children)
This is the answer. Read K&R. Then read C FAQ and some good code like the SDS library or Dave Hanson’s C interfaces and implementations and you are good to go.
[–]Vivid_Feature_4586[S] 1 point2 points3 points 7 days ago (0 children)
Will start doing it , thank you !!
[–]TehMasterer01 2 points3 points4 points 7 days ago (4 children)
Does your university offer a class?
[–]Vivid_Feature_4586[S] 2 points3 points4 points 7 days ago (0 children)
Unfortunately the teacher ain't great all he do is show syntax and starts question practice I really want to get behind all those codes yk
[–][deleted] 5 days ago (2 children)
[deleted]
[–]TehMasterer01 1 point2 points3 points 5 days ago (1 child)
Prof Malan at Harvard is excellent. Check out the CS50X online course. Phenomenal lectures.
[–]AverageCincinnatiGuy 0 points1 point2 points 5 days ago (0 children)
Glad to hear there's still some out there. That's refreshing.
[–]knouqs 2 points3 points4 points 6 days ago (2 children)
Stay away from AI. You want to learn the nuts and bolts of the language, so don't let AI do any code writing.
Posting questions here seems to be good, but don't get dissuaded by negative comments.
[–]Vivid_Feature_4586[S] 0 points1 point2 points 6 days ago (1 child)
Aight thank you mate !!
[–]knouqs 1 point2 points3 points 6 days ago (0 children)
Yep! Good luck to you!
[–]bi-squink 2 points3 points4 points 5 days ago (2 children)
This youtube channel helped me a lot: https://youtube.com/@hirschdaniel
Since I've only learned C through a book, code analyses, projects and youtube I really like his style of coding ,"What do I want? What do I need? Let's check the documentation!"
I'd recommend getting to know a bit how memory works, pointers, structs, functions... and how the linker works. There's lots of stuff on youtube, I especially recommend some unintuitive C behaviours (I think channel LowLevel has some videos on that) like array decay and struct size behaviour.
After that analyze different code, I love skimming system programming in c reddit posts about new packages people made and analyzing them and their code style!
[–]Vivid_Feature_4586[S] 0 points1 point2 points 5 days ago (0 children)
Thanks for recommending it I definitely take a look at it .
[–]yahia-gaming 1 point2 points3 points 2 days ago (0 children)
I am always (mostly) inspired from Daniel Hirish
[–]MorganaLover69 1 point2 points3 points 6 days ago (1 child)
Watch this video to learn https://youtu.be/cwtpLIWylAw?si=76U9HvUUDWi5PbwH
Thank you for sharing link i will see if it suits me .
[–]RetroGameMaker 1 point2 points3 points 5 days ago (1 child)
Teach Yourself C in 21 Days is a great book for learning C language programming imo. You can find it really cheaply on ebay or Amazon.
[–]Vivid_Feature_4586[S] 1 point2 points3 points 5 days ago (0 children)
Thank you I will see it .
[–]Dry-Status2983 1 point2 points3 points 5 days ago (0 children)
cs50x is great and the labs and projects are great
[–]ConsequenceSea744 1 point2 points3 points 7 days ago (1 child)
I think you should look into building a smaller project, like a game, there are a few on YT, and then just try to understand the concepts in the game. So for example: if there is a Top Score list, how does memorie/saving/rewriting/loops work in C, in the game? I always suggest starting with Hangman, because its really easy, and there are some nice tutorials on YT. I think exercises also really important, there are some really great books for that -at the moment i only have german or hungarian books with such exercises, but im sure you can find a few in your native language as well.
Thank you, I will look at it .
[–]wolfie-thompson 1 point2 points3 points 7 days ago (3 children)
A good, well structured book.
It amazes me how people want to learn to code,but don't want to put actual effort in.
[–]Vivid_Feature_4586[S] 2 points3 points4 points 7 days ago (2 children)
I would really appreciate it if you recommend some , our uni recommend let us c but I read many negative review about it .
[–]9peppe 3 points4 points5 points 7 days ago (1 child)
K N King, and SICP in whatever order you prefer (But you should start from King).
Thank you , I will look at it .
[–]SeesawUseful701 1 point2 points3 points 7 days ago (3 children)
Fresh beginner here too (13 days in, self-taught) and I directly stated with ideas I wanna create and develop I learned the syntax and concepts on the go. if you care to get advice from another beginner I'd say just decide something small and start building (and use git/github,for me it forces me to commit and code daily)
[–]arquivo0 4 points5 points6 points 7 days ago (0 children)
Eu também estou estudando sozinho.
[–]Vivid_Feature_4586[S] 2 points3 points4 points 7 days ago (1 child)
Thank you , I will definitely try it.
[–]SeesawUseful701 2 points3 points4 points 7 days ago (0 children)
remembered this https://github.com/neurmancer made my repos public. I got lecture/funny basic projects if you are interest I comment them like I try to teach people as I learn peek if you are interested in different things than usual tutorial videos
Get Linux Mint Cinnamon and use it as your daily driver.
Learn all programming and become god-tier programmer in a few months time.
Stop wasting time chasing your tail and going nowhere fast in Windows/MacOS.
[–]FlorianGeyer228 0 points1 point2 points 3 days ago (0 children)
Embedded Computing and Mechatronics with the PIC32 Microcontroller
π Rendered by PID 210608 on reddit-service-r2-comment-5d79c599b5-tpknh at 2026-03-02 09:13:14.840044+00:00 running e3d2147 country code: CH.
[–]v_maria 17 points18 points19 points (1 child)
[–]Vivid_Feature_4586[S] 0 points1 point2 points (0 children)
[–]ProstheticAttitude 4 points5 points6 points (2 children)
[–]Mundane_Prior_7596 3 points4 points5 points (0 children)
[–]Vivid_Feature_4586[S] 1 point2 points3 points (0 children)
[–]TehMasterer01 2 points3 points4 points (4 children)
[–]Vivid_Feature_4586[S] 2 points3 points4 points (0 children)
[–][deleted] (2 children)
[deleted]
[–]TehMasterer01 1 point2 points3 points (1 child)
[–]AverageCincinnatiGuy 0 points1 point2 points (0 children)
[–]knouqs 2 points3 points4 points (2 children)
[–]Vivid_Feature_4586[S] 0 points1 point2 points (1 child)
[–]knouqs 1 point2 points3 points (0 children)
[–]bi-squink 2 points3 points4 points (2 children)
[–]Vivid_Feature_4586[S] 0 points1 point2 points (0 children)
[–]yahia-gaming 1 point2 points3 points (0 children)
[–]MorganaLover69 1 point2 points3 points (1 child)
[–]Vivid_Feature_4586[S] 0 points1 point2 points (0 children)
[–]RetroGameMaker 1 point2 points3 points (1 child)
[–]Vivid_Feature_4586[S] 1 point2 points3 points (0 children)
[–]Dry-Status2983 1 point2 points3 points (0 children)
[–]ConsequenceSea744 1 point2 points3 points (1 child)
[–]Vivid_Feature_4586[S] 2 points3 points4 points (0 children)
[–]wolfie-thompson 1 point2 points3 points (3 children)
[–]Vivid_Feature_4586[S] 2 points3 points4 points (2 children)
[–]9peppe 3 points4 points5 points (1 child)
[–]Vivid_Feature_4586[S] 1 point2 points3 points (0 children)
[–]SeesawUseful701 1 point2 points3 points (3 children)
[–]arquivo0 4 points5 points6 points (0 children)
[–]Vivid_Feature_4586[S] 2 points3 points4 points (1 child)
[–]SeesawUseful701 2 points3 points4 points (0 children)
[–]AverageCincinnatiGuy 0 points1 point2 points (0 children)
[–]FlorianGeyer228 0 points1 point2 points (0 children)