Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I have programmed in Java, PHP, C# and a little bit in C in an OS course I have taken recently in college. For all of these languages, I've found decent documentation except C. I couldn't find a good source for it.

Any thoughts ?

share|improve this question
What source did you find and what made it not "good"? Please be specific, otherwise this is too vague to answer. –  S.Lott Jan 27 '11 at 20:41
C and C++ are different languages. Which one are you looking for docs for? –  Anna Lear Jan 27 '11 at 20:42
Despite for their syntactical similarities (C is, syntactically, mostly a subset of C++), C and C++ are actually very different languages, with different, in fact: often opposite, idioms and conventions. You need to decide which one you want to learn, and you need to adapt your answer to tell us. Meanwhile, it's a -1 from me for that faux pas. –  sbi Jan 27 '11 at 22:09
There is a C/C++ language. It doesn't have an official standard, but there's a lot of code written in it :-( –  dan04 Jan 28 '11 at 0:46
@Ahmad: C++ started as C with objects bolted on, and has since evolved to become a much different language. However, since both of those are ISO standards, there is no official references other than those Standards, and you almost certainly wouldn't find them useful. –  David Thornley Jan 28 '11 at 14:34
show 7 more comments

closed as off-topic by gnat, Corbin March, MichaelT, GlenH7, Kilian Foth Sep 9 '13 at 12:09

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, Corbin March, MichaelT, GlenH7, Kilian Foth
If this question can be reworded to fit the rules in the help center, please edit the question.

3 Answers

For the C and C++ languages themselves plus the standard libraries, there are many books and online references. The language standards also work decently (if you can decipher standardese) as stdlib references.

If you're on *nix or Windows with cygwin, man pages are very useful for the C stdlib.

share|improve this answer
add comment

My favorite C reference is C: A Reference Manual, 5th edition, by Sam Harbison and Guy Steele. It's up-to-date with the C99 standard (K&R2 isn't), it's mostly correct (a shocking number of C books are full of basic errors), and it covers C++ compatibility issues.

By itself, it's not a good resource for learning C, but it makes a great companion reference to whatever introductory material you find.

The final word is the language standard, the latest working draft of which is found here. Again, it's not a great resource for someone just starting out, but it's something you should have bookmarked if you work in C regularly.

share|improve this answer
add comment

Ok, going to take a stab at this, although I'll agree it's a little vague...

Having taught an intro class in C and an intro class in C++ (years ago at a community college) I did see a lot of people who where new to programming be extremely put off by reference books on the subject (either language). Keep in mind this was 1998-2002. The majority of the reference assumed programming experience in other languages. Add the following:

  • reference books tend to assume knowledge of the subject to higher degree than introductory books.
  • there are a lot of frameworks and API's for different C & C++ flavors.

What I found helped students new to the subject (most of mine had VB and FORTRAN experience) was that (forgive me with this) but the C++ For Dummies book did a good (some said great) job at explaining the subject. I am in no way affiliated w/ the book publisher. If this is more of what you meant, perhaps a book similar would be helpful.

share|improve this answer
There's a lot of C90 code floating around, so your experience is relevant there, but the understanding of C++ has changed dramatically since 2002. I'd rather see a recommendation from somebody with more recent experience. –  David Thornley Jan 27 '11 at 22:16
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.