C development on Linux - Introduction - I. - LinuxConfig.org

What you're just reading is the beginning of series of articles dedicated to development on Linux systems. However, with minor modifications (if any), you will be able to use this knowledge you will get by reading our series on any other system that uses the same tools (OpenIndiana, BSD...). This first article will deal gradually with the intricacies of writing C code on Linux. You are expected to have basic programming knowledge, either on Linux/Unix systems or on other platforms. The idea is that you should know the basics of programming, like what a variable is or how to define a structure.
This is a companion discussion topic for the original entry at https://linuxconfig.org/c-development-on-linux-introduction-i



I heartily disagree. The only thing either edition of K&R is good for is lining the bottom of a bird cage.

C was not terribly useful as a real language until C99 (and even that is not especially a good choice.) The latest bits in C99 and later versions make it an entirely different language from the C as proposed and used by K&R. Pointer arithmetic and other truly horrible practices were very much encouraged by K&R. Now, I would do unmentionable things to any of my engineers who were foolish enough to use such practices.