
Modern C
by Jens Gustedt · first published 2019
55mentions
37recommended by
45HN commenters
2015–2025first – last mentioned
82% recommend18% neutral
Why HN recommends it
Up-to-date, opinionated guide to how C is written today, organized in levels so experienced programmers can skip ahead. Free online and suits those with prior programming experience who find K&R dated.
Summarised by Claude from recommending comments
Affiliate links. As an Amazon Associate I earn from qualifying purchases.
Read freeOnline edition






…book was Expert C Programming by Peter van der Linden, mainly for the method of reading any C declaration and for teaching me the difference between libc calls vs syscalls. There's also a book called Modern C by Jens Gustedt from 2020 that I have and is more beginner friendly. The way I learned C is I printed out the Beej's guide client/server code and walked around staring at it until it made sense. (That…
on “Beej updated the classic Linux network programming guide” ↗Modern C, by Jens Gustedt is one of the best books on C that I have read. That said, I don't think it scratches the surface of backing up the parents claims––though if anyone know of such a text please let me…
on “Speed of Rust vs. C” ↗As for learning C, I like to recommend Modern C: https://gustedt.wordpress.com/2019/09/18/modern-c-second-edi... There are also printed versions.
on “A guide to getting started with embedded systems” ↗Excellent choice! I started off 2022 with learning c and it’s a lot of fun! As some other commenters, I really recommend Modern C by Jens Gustedt. If you’re on Linux you can use man pages for most or all of the c stdlib, it’s a really convenient way to check up on stuff directly from the terminal, less tempting to rabbit hole into…
on “Ask HN: Learn C in 2023?” ↗I have found https://www.manning.com/books/modern-c really useful. It is written by Jens Gustedt (https://icps.icube.unistra.fr/index.php/Jens_Gustedt)
on “Teaching C (2016)” ↗I second "Modern C" by Jen Gustedt. - Get the `cdecl` tool to build intuition about function signatures. What does "int( * ( *foo)(void))[3]" mean? - Write it yourself. - Be disciplined. Develop good hygiene with compiler…
on “I stopped everything and started writing C again” ↗I love Modern C by Jens Gustedt. I will stick to the older version without C23, as I prefer C99, but pretty sure this version is great, too. I learnt a lot from reading this book.
on “Modern C” ↗…remembered mile marker of this lousy decade in computers than Rust, which will be an obscurity in an appendix in 100 years. I doubt it. I'm teaching a course on C this fall. As textbook I've chosen "Modern C" by Jens Gustedt (updated for C23). I'm asked by students "Why don't you choose K&R like everyone else?" And while the book is from 1978 (ANSI C edition in 1988), and something I've read joyously more…
on “I'm too dumb for Zig's new IO interface” ↗What is “C development”? K&R is a great intro. If you want a book that digs deeper, try Modern C by Jens Gustedt. It’s update for C23 this year, and it’s CC (free). If you want to make something like TigerBeetle or Redis, that’s sort of just specialised back-end development. You can also do embedded…
on “Ask HN: Who here is not working on web apps/server code?” ↗"Modern C" by Jens Gustedt is an excellent book on a more modern approach to C.
on “There are many ways to fail to read a file in a C program” ↗Here's a 2011 guide to modern C: [1] Discussed on YC last year.[2] The 1970s string functions, such as "strcpy", that don't have a destination length were deprecated years ago, but they've never been removed from libraries. Microsoft's C compiler has warned about this for a decade.[3] This is one of the major causes of buffer overflows in C, and a large number of exploits involve it.. There's a
on “Let's code a TCP/IP stack, 1: Ethernet and ARP” ↗Jens Gustedt's "Modern C" (https://modernc.gforge.inria.fr) is an excellent resource as well.
on “Beej’s Guide to C Programming [pdf]” ↗There is some helpful literature, though. You might possibly appreciate “Modern C”: http://modernc.gforge.inria.fr/
on “The Hard Part of Learning a Language” ↗https://gustedt.gitlabpages.inria.fr/modern-c/
on “Ask HN: Best book to learn C in 2022?” ↗C is a language that has come a long way since the original K&R. And quite frankly, K&R is a good source to get the feel of C, but it doesn't really reflect how C is used in practice today. That said, I've found "Modern C" by Jens Gustedt [1] to be very good at teaching the basics of the language up to the intermediate level. At some point though, you need to study projects and other various tool
on “Beginning to learn C: What resources should I be using?” ↗