Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Good C Book

Status
Not open for further replies.

bryan

Member
Any recommendations for good books on learning C. I borrowed "The C tutorial" by Kernighan from the library, so we can cross that one of the list.
 
Practical C programming 3rd edition (1997)
Beginning C from novice to professional 4th edition (2006)
 
Last edited:
Just requested Practical C Programming from the library so will see how it helps. Found the Kenighan book I mentioned earlier rather abstract and jumping all over the place. Everybody raves about the book but I didn't think it was all that great.

Torben, the link for the ultimate book on Wikipedia doesn't seem to point to anything??, but the other link looks very informative. Thanks
 
Just requested Practical C Programming from the library so will see how it helps. Found the Kenighan book I mentioned earlier rather abstract and jumping all over the place. Everybody raves about the book but I didn't think it was all that great.

Torben, the link for the ultimate book on Wikipedia doesn't seem to point to anything??, but the other link looks very informative. Thanks

you need to add a ")" at the end of the link

Usually the Sams Teachyourself book series are great. I am using the "Teach yourself C in 24 hours" book and finding it great. However I would of rather gone for the 21 days edition of it, which would pack more detail.
 
The **broken link removed** is handy place to look for which function is declared in which library (.h file) and what parameters it accepts.

It doesn't replace book just complements it. You'll need it later, when you understand the main principles already.
Part one contains C language reference, but I wouldn't recommend it for beginners. Part 2 is library reference.
 
The Book "Embedded C Programming and the Microchip PIC" by Barnett Cox & O'Cull is not bad either. Even has a tutorial project in it, explained step by step. I find it very handy.
 
Last edited:
Bryan,
Are you wanting to learn 'C' in general or is there a specific platform for which you will be programming? You may wish to look for a platform or compiler specific 'C' book that applies to your situation.

Rather than one book, I would recommend at least two books for any language. One book that is a good tutorial or 'learning' book that is written to help one learn the language and the other one is a good complete reference book including the libraries. You will start with the tutorial at first to learn the basics of the language and then lean on the reference more and more. The reference is used when you know what you want to do but just need to look up the syntax or the name and parameters for a library function. (Kind of like having a dictionary when learning to read then you graduate to having only a good dictionary once you know how to read and look things up in the dictionary.)

Often on-line help or the compiler help system will substitute for the reference book, but sometimes I like to get away from the computer and have a book to hold and flip through the pages.

If you are proficient in a number of languages, you may get by with just a good reference book for the compiler/platform you are using if the language is similar to others you know.

I do not have a specific recommendation since I learned 'C' in the 1980s and have not kept up with more recent publications. Since then, I have only had compiler specific reference manuals.

There is no simple answer to the question what is a good 'C' book to have when there are so many other factors to consider. Try looking up books on sites like Amazon.com and read the book descriptions and reviews. If you think you may like the book, order it and return it if it doesn't meet your needs and expectations.
Dale
 
Many people say this (K&R) is the bible. I, for one, tell all newbies to stay as far away from it as possible. When i read it in the early 90's it made me feel so stupid i almost gave up programming.
It's more of a book for people who already know how to program in C.
 
It's more of a book for people who already know how to program in C.

Hi Colin,

I almost agree: I'd say it's more of a book for people who already know how to program. When I got to that book I already programmed in Pascal, Modula-2 (yech) and asm (MIPS and x86) and found that the book had pretty much everything I needed.

I certainly wouldn't recommend it as an introduction to programming, though. But if I knew someone could already program in another procedural language, I would given them that book with no qualms.

Another good site with lots of information for the C programmer: comp.lang.c Frequently Asked Questions


Regards,

Torben
 
My sentiments exactly, found it rather confusing, especially the sections on pointers.

Many people say this (K&R) is the bible. I, for one, tell all newbies to stay as far away from it as possible. When i read it in the early 90's it made me feel so stupid i almost gave up programming.
 
Have done some programming in VB and assembler. have a basic knowledge of programming concepts, but wanted to move to C for PIC's. Have a general feel for C but lost on pointers/arrays. Also feel it may be a good way to grasp and get a head start on other computer languages like Java and C# as the syntax is similiar, although object orientated programming is a whole different animal.

Bryan,
Are you wanting to learn 'C' in general or is there a specific platform for which you will be programming? You may wish to look for a platform or compiler specific 'C' book that applies to your situation.
 
Have done some programming in VB and assembler. have a basic knowledge of programming concepts, but wanted to move to C for PIC's. Have a general feel for C but lost on pointers/arrays. Also feel it may be a good way to grasp and get a head start on other computer languages like Java and C# as the syntax is similiar, although object orientated programming is a whole different animal.

I purchased "Programming 16-bit Microcontrollers in C" (Subtitled "Learning to Fly the PIC24") by Lucio Di Jasio for learning to program PIC processors in 'C'. I haven't read it yet (it is still in a huge stack of books-to-read) so I can't give a review but it looks good just thumbing through the pages.

This is a book for people with some programming experience but you don't have to be an expert programmer. It is specific to PIC processors so it may be what you need. Perhaps someone here has read the book and can give a proper review.

I think I will also look at "Embedded C Programming and the Microchip PIC" by Barnett Cox & O'Cull recommended by redmars in a post here.
Thanks,
Dale
 
I purchased "Programming 16-bit Microcontrollers in C" (Subtitled "Learning to Fly the PIC24") by Lucio Di Jasio for learning to program PIC processors in 'C'. I haven't read it yet (it is still in a huge stack of books-to-read) so I can't give a review but it looks good just thumbing through the pages.

This is a book for people with some programming experience but you don't have to be an expert programmer. It is specific to PIC processors so it may be what you need. Perhaps someone here has read the book and can give a proper review.
Excellent book. It's targetted at the 24F chips (he has the same book targetted at the 32-bit ones too). It will not teach you C, nor is it a C reference. The code is very understandable. He never gets too advanced for a mediocre programmer like me to understand, though there's a few parts where I learned new things. He does go over a bunch of the advanced uses of MPLAB, which is good. And the projects are interesting.
 
I found one that totally works for me-

After struggling thru Mike Predko's miserable microcontroller book in the Evil Genius series, and having learned and used Fortran quite a bit in college, I found "PIC Microcontroller and Embedded Systems using Assembly and C for PIC18" by Danny Causey, et al. They explain the inner workings of the language, and give tons of programming examples and good basic functions and program blocks. This is a college textbook, and is easily thorough enough to stand alone as a self-learning foundation. It is written for the PIC 18 series, which means that it teaches the 75 assembly language commands used with those MCUs. The PIC 16 series uses about 35 of these commands, but you can do the same thing with these, it just takes a little more work sometimes.
Good luck
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top