So I’m learning to program in C, and I really enjoy it. It’s so fun making literally anything with it. But why oh why is it so difficult to work with? “Oh you wanna make a string variable? Screw you, single characters only!”, but then if you turn it into a pointer, THEN you can have char variables. “‘Wait’? ‘Sleep’? Nope, no clue how to do that”, and then there’s a million modules that add sleep functions, and even then you never know if it’s seconds or milliseconds! And don’t even get me started on arrays, what is it with them and keeping a constant size? And why are variables restricted to a single data type? The hell??
WHY DENNIS RITCHIE? WHY?!
Also, I hav skitltes ☺️
GGLives
C is a great language to learn. Most of the difficulties you're running into essentially stem from the fact that C is a "lower level" programming language. Meaning that the code you're writing is less abstracted from the actual instructions that have meaning to your cpu. For a lot of different technical reasons, this creates all these seemingly arbitrary constraints with what you can and can't do in C as opposed to higher level languages like python. I highly recommend learning C anyways because working around these sorts of constraints and taking extra time to understand them will make you a much greater programmer in the long run.
The book by Kernighan and Ritchie is a great resource, but it assumes a bit more low level computing knowledge then most people have. Reading it and prompting chatgpt for explanations to any errors or other questions that come up is a great way to go about learning C. If you want to dive deeper into lower level stuff, 'But How Do It Know' by J. Clark Scott is a great read too.
Do note that this is all really technical nerd stuff. If your interests lean more towards making art/video games kind of stuff, all the lower level knowledge isn't super necessary to get into that. Learning it would still be useful and neat in the long run, but from my understanding, it can be kind of a deep rabbit hole that doesn't necessarily take you quite where you'd think it would.
Hope this is helpful :p