These are classic reference books that you can use to understand c in depth.
'The C Programming language by Kernighan & Ritchie' is THE C reference
This is not the book for you if you're looking for a wordy introduction to C
It is a technical guide to the C language that is exact.
I have included it here as I think it is the best reference text book for C programming.
Note : It is not aimed at microcontroller programming but its information is just as applicable to microcontrollers as to programming PCs because the C language is standardized. The only information that is not relevant is where text is displayed on a screen using puts and printf (the microcontroller may not have a display!) - but you can attach a serial port if you need to.
There is no gentle introduction but this lets you zoom in on the information you need and it is not a huge Tome of information - it comes in at ~260 pages and is less ½ inch thick.
This book is not an introduction to C and it is not a beginners book do not buy it in the hope that it will teach you programming - it does show you good style and exactly how complex code works - but it is not for starting out.
You only need this book if you are really really interested in C programming and want to understanding the absolute fundamentals of writing C code but it is not light reading and it is not a teaching book.
It will however show you how to write a standard library functions in the correct way and maybe you will end up writing a few of the standard library functions yourself. This book gives you the actual code used to create library functions and shows you good techniques for making real code.
It tells you what the libraries are e.g. stdlib.h and exactly what standard
functions it should contain - microcontroller libraries may not contain the
same due to resource problems or processing power.
It is heavy going and has complex code in it - and after looking at a little of it you will understand why some functions are omitted from microcontroller libraries e.g. printf!
Jump from c programming to
Best Microcontroller Projects Home Page.
How to use I2C. In this tutorial you will learn all about the 2 wire I2C serial protocol. Learn how easy it is to use, how it works and when to use it...
What exactly is RS232 and how does it work? - Find out Here!
This 74HC595 shift register tutorial shows you how to increase outputs for any microcontroller. Learn how to add 8, 16, 32 or more outputs with multiple 595's.