I have a fundamental knowledge of C and I am wanting to get better at understanding C. here is an example of what I’m looking for. I write random programs to try and challenge my self with help from the man pages, for example i’m trying to create my own Linux shell right now, but I feel as i’m just using functions and not understanding what’s happening when I use them, the article that I linked helped me understand what was going on with scanf and fgets more, and I’m looking for similar articles.
There’re two things here; there’s the C language, which it sounds like you’ve got some grasp on, but then there’s the standard library and system calls. The system calls will be OS specific, so you probably want to look for a guide not just for C, but for operating systems. System calls are generally how the program interacts with anything outside itself (files, user input/output, timers, network, communication with other programs on the machine, etc).
Building a shell is a common assignment on many university level undergrad operating system courses. So my advice is: look for an article about building a shell from scratch for Linux OR look for an open operating systems course and check the syllabus to be sure it includes building a shell.
Thank you, I’ll have a look around.
It’s not as in depth as the article you posted (it’s really good btw, nice find!), but i really like Beej’s guide to C (https://beej.us/guide/bgc/html/#foreword) for an overview of the language and the tons of stuff you can do.
Just glanced over it for 10 mins, i’m probably going to look over this more, it’s bookmarked, thank you.
I would recommend this book. It’s a classic.
https://www.amazon.com/Unix-Programming-Environment-Prentice-Hall-Software/dp/013937681X