Hello, I am very new to the world of Systems Programming and Manual Memory Management. I had just completed my schools AP Computer Science course (where we learned the basics of Java) and C has excited me for a while. However I have not the slightest clue as to how to “correctly” learn C. There’s plenty of guides online but I want to know from a veteran C programmer how I should learn C. Like what resources should I utilize, what should I do when learning, etc. I hope to at least get a strong understanding before the summer ends. I know you can’t learn C overnight, or anything for that matter. I wish to apply this knowledge towards System Programming and maybe even OS development. Your responses would be greatly appreciated!
Also, if you want, you can share about how you learned the C language, and maybe give some tips on how to do it more effectively.
What resources did you use to learn C ? As a beginner to C, I'm finding it really difficult to pick up the language from just reading about the syntax rules. Are there any good resources / books / youtube videos to not only learn the syntax, but also the more advanced concepts (pointers, scope, etc)?
Edit: I know learning how to code takes time, but I'd prefer resources that wouldn't be so time consuming. More of a resource that I could approach when I'm stuck on a single topic
hi i am a college student i want to learn c because this semester i will learn it i have learned python alone with pynative and w3school can you reccomend a free website to learn c with exercice , lesson and exemple (like pynative ) please
I'm just wondering if learning how C works would be worth the time and effort compared to other coding languages
I've heard it's the easiest general purpose coding language. Is there any clear advantages it has?
What are some good and reliable resources to learn C programming as a complete beginner
should I go for neso academy course?
please help
So, I've done some Python and some Go already and I don't want to learn C as if I am completely a beginner. I want to learn the unique parts of C but don't need to be taught what a for loop is or anything. Ideally, I'd love something that would walk through teaching me C while at the same time pointing out what is different from other languages. Like if someone was learning Go I might not teach them what a for loop is but I would teach them that Go has 4 basic versions and there's no such thing as a while loop.
I'm by no means an expert in programming with either Go or Python but I know the basics.
Any youtube video/series that won't spend a lot of time teaching me stuff that's unnecessary. I'm reading a book on Operating Systems (OSTEP) and I just want C to follow the exercises and write little 'scripts' to check my understanding.
Hey fellow C programmers!
I'm really eager to understand computers better, to get into the nuts and bolts of how things work under the hood, but it seems like a lot of the YouTube tutorials out there just skim the surface. idk I feel like they don't go into the advanced topics that I'm really curious about and it feels like I'm missing out on a lot.
So I'm on the lookout for a great course or resource that can help me learn the C language while also diving deep into the inner workings of computers. I want something that starts at a beginner level but goes into detail explaining why things work the way they do. And since I'm more of a visual learner I prefer video tutorials over reading :D
Any recommendations?
I have programming experience in Java, but I have to learn C this semester. Are there any online courses you guys could recommend? I tried code academy but its not there. I'd prefer something other than a book if possible. Any help is appreciated
I want to start learning C (or Assembly) as a first language. For weeks I've been thinking about both C and Assembly and no other language interests me. I have no background in CS or anything, I just want to learn C most because I have interests in niche fields where C and Assembly are used (rom hacking retro games, reverse engineering, malware, security, etc.). I know that python gets used in those fields as well (although I don't think it's used in rom hacking not that I'm aware of) and I'm always told to learn Python first, it's easier and you get better jobs but I don't have any interest in python in fact, I'm getting sick and tired of hearing about python. I'm not doing this for job prospects, higher pay or anything. I just have very specific needs that don't involve python.
I'm always around people who show off their projects in C and Assembly and I just think what these people make are cool and I want to contribute as soon as I can. I just don't think I would be happy learning a language I'm dead set on not wanting to learn but I have some clue on what I want to do with C and assembly in the future or even now. Its just I see comments online and even in the C beginner books that tell me that I need to know python or another language first to learn C. A lot of you guys learned it as your first language, how did you go about learning it?
What is the best and cheapest way to learn c?
Hello everyone! I'd like to get some recommendations on MOOCs, screencasts, tutorials or books that talk to me like I'm five and go with me as in a pairing session building something cool & non-trivial (compilers, networking, databases, os, schedulers, file systems, etc).
Allow me to write a bit of background on my experience - I majored in CS but I never had a course on C, the syllabus was all Java; over the years I've been on an off trying to learn C I'm comfortable with the syntax (when it's sanely written), however never built anything big on it, since I started programming professionally I always focused on web applications using PHP, Java, Python and JavaScript but nothing to difficult, just the usual boring CRUD web applications, always using frameworks that were too magical for me to understand what was going on under the hood, I always got a thing on learning programming languages but I always pick higher level languages; almost 10 years later and I now make a living using Haskell pretty much doing the same; but in the back of my mind I don't feel complete because I never did lower level languages or systems programming of any sort, so I want to "master" C and have some exposure to it as if I did a strong foundations course in C.
Since a couple months ago I started reading "Beej's Guide to C Programming" I like a lot his style of writing, what I don't like is that there are no exercises and I feel like I'm not flexing any muscles, I'm over 60% there on the book (excluding the reference part) and today I tried to supplement my learning with a project-based book "Crafting Interpreters by Nystrom", right from the get-go one of the first "challenges" is to build a double-linked list, I won't lie but after lots of googling and chatgpt orientation it took me a whole afternoon just to build insertion of elements on my own (no fetching, deletion or updates), like even setting up a Makefile because I didn't know I had to use tabs for indenting!. So I think I severely lack understanding of the language or data structures, I don't know! (like I always got lists or hashmaps for granted, never questioning how they work); now, I could continue wrestling the challenges in the book, but I also don't want to take forever on completing a C book.
So ideally I would like a course that goes hand in hand with the student to build cool non-trivial stuff explaining every detail. A format that I like very much is when they go to the point, as an example see a screencast by Jeffrey Way: https://www.youtube.com/watch?v=y2EjzBAFffo I don't know if something similar exists for C with lower level interesting projects.
Please masters, teach me! help me gain the powers reserved only to the true hackers!
EDIT: Can't change the title, but I guess what I'm looking for is for the "smartest efficient way to learn C without taking ages".
Edit: Appreciate all the resources and advice, will take them all into account. Thanks
Yes, I know this question has been asked a million times here. However, I’m more of a hands on learner and when most people ask this question they get recommended books and videos so I wanted to ask if there a website/course that has coding exercises that start from the absolute basics and build up gradually? I’d like to learn practically by actually coding but don’t know what programs to write as a beginner and how to expand on that. My university recommended the K&R C programming book. I don’t mind books but sometimes I don’t understand what the book says. I did watch a 4 hour video by freecodecamp and found it quite helpful. I was basically coding exactly what he was and understood some of the data types and basic functions like scanf. However some of the more complex functions like pointers, while and for loops just went into one ear and came out the other and didn’t really know how to do it after the video. Would appreciate any advice
So I wanna learn C programming, and I was wondering what websites and YouTube channels I could use. Also if it helpzs, I did C programming in school last year so I am not a total beginner, but I still have stuff to learn and would like to gain more knowledge, maybe I'll even get a minijob later
Hope someone can help me
Edit: just wanted to say thanks to everyone for the recommendations, I'll try and see what's best for me
I started learning C a month ago and before then i was programming using other languages and frameworks. So now i learned the C language basics (variables, functions, pointers, etc…) but till now i haven’t really made any actual project and i really don’t know how to put these things to use and so i think that maybe the best way to learn is to look at actual projects made with C so can you please recommend open source projects made with C but small one like 10 files max in order to get the hang of things not some thousand file projects and also if you have any other recommendations to learn C effectively then feel free to share it will be appreciated.
I’m a computer science student with a solid background in programming and experience in languages like PHP, JavaScript, and Python. While I’m still learning, many of my seniors and professors suggest that to build a strong foundation as a programmer, I should focus on languages like C, C++, or Java instead of the ones I’m currently working with. The reason is that C and Java are considered more fundamental to understanding core programming concepts. However, I’m in my final year, and as I prepare for placement drives, I’ve noticed that most companies focus on languages like C and Java during interviews. Even though I have strong projects in Python and JavaScript, they’re often overlooked because they see these languages as “easier” or “modular.”
Additionally, for my goal of pursuing a master’s degree from a top government college, I need to pass an entrance exam where they primarily focus on C and C++ programming. I’ve realized that a solid understanding of C will open up more opportunities, but I’m uncertain how to learn it from scratch. I bought a book called "Programming with C," but I’m concerned it will take too long to cover everything, especially since I’m starting from the basics. My main question is: How do I effectively learn C from scratch to an intermediate level, where I can confidently write logical programs? I don’t have much time, and I’m unsure how much effort it will take.
I know many resources are available online, such as documentation, YouTube tutorials, and other websites, but I’m feeling overwhelmed and unsure of the best path to follow. I’m hoping someone can guide me, like a big brother, on how to approach learning C in a structured way. Ideally, I want to become proficient in C within a month. Any advice or suggestions on how to achieve this would be greatly appreciated!
I want to get in on learning C and programming in it. But I have no idea where to start. What programs should I get? I'm using windows and green when it comes to it.