views:

303

answers:

7

I've (re)started working in C after about 3 years:) And i discovered that my C language skills arent that good anymore.

Can anyone recommend an online book for C? (not C++) It should cover the basic functions, plus pointers, and working with linear lists, reading from files..etc. This things are covered by basically any book for beginners, but what i've found around bookstores around here kinda sucks, they are really for beginners, and the one i bought has examples written with borland C in mind (and some specifics)..other books i've seen are specific to Microsoft VC... but i'm doing this project in Linux...

Edit: http://cslibrary.stanford.edu/ also worth looking into:)

+3  A: 

The C Programming Language

PolyThinker
Exactly what I would suggest.
BobbyShaftoe
i'm looking for a 'download today' link not 'buy in 2 weeks' link. I need to relean and finnish this project in 1-2 weeks
Quamis
As I said in another comment of another answer, you can find it in pdf format by searching "kandr.pdf" on Google.
yjerem
+1  A: 

Your local library may have a ProQuest / Safari subscription - usually accessible online with a library card. I've had good luck with that.

Peter Stone
+1  A: 

"Programming in C" (PEOI)

http://www.peoi.org/Courses/Coursesen/cprog/fram1.html

Don Music
+5  A: 

I went to The C Programming Language, but the site doesn't have an online copy of the book, only links on where to buy it and different international editions. Misquamaqus wanted an online book.

However, a pdf of the book can be found here.

fnord_ix
Search for "kandr.pdf" on Google and you should find it.
yjerem
Piracy? I paid ~40USD for that book.
Anthony Cuozzo
thx jeremy:) quick'n dirty:)
Quamis
+1  A: 

Try The New C Standard: An Economic and Cultural Commentary by Derek M. Jones. It's a 10+ MB PDF. It may not be the tutorial you are looking for. I've read some, but by no means all, of it.

Jonathan Leffler
+1  A: 

If you're writing C on Linux, consider getting a copy of Advanced Programming in the Unix Environment.

Come in handy for a lot of the system calls.

Calyth
+2  A: 

I was in the same predicament. I was what I would call a 'semi decent' C programmer for about ten years, then spent a few years working almost exclusively with languages like PHP.

Needless to say, getting back into Linux application and server development (especially diving into something as complex as Xen) was like getting into a tub of ice water. Some people say programming languages are like riding a bike, I'm not so sure that applies when dealing with Assembly / C.

I grabbed a few of those 'visual quick start' guides which are still collecting dust. Then I just started downloading the source to many things and followed along with the help of the GNU C Library documentation.

If you are using Linux, you are most likely working with gcc and glibc. The glibc manual covers everything from c89 onward, POSIX and extra GNU extensions which many books fail to cover.

As for a quick refresher? Try this course by Rob Pooley. And, of course, K&R.

Tim Post