CommunityNews

CommunityNews

Beej’s Guide to C Programming (pdf)

Foreword

No point in wasting words here, folks, let’s jump straight into the C code:

    E((ck?main((z?(stat(M,&t)?P+=a+'{'?0:3:
    execv(M,k),a=G,i=P,y=G&255,
    sprintf(Q,y/'@'-3?A(*L(V(%d+%d)+%d,0)

And they lived happily ever after. The End.

What’s this? You say something’s still not clear about this whole C programming language thing?

Well, to be quite honest, I’m not even sure what the above code does. It’s a snippet from one of the entries in the 2001 International Obfuscated C Code Contest1, a wonderful competition wherein the entrants attempt to write the most unreadable C code possible, with often surprising results.

The bad news is that if you’re a beginner in this whole thing, all C code you see probably looks obfuscated! The good news is, it’s not going to be that way for long.

What we’ll try to do over the course of this guide is lead you from complete and utter sheer lost confusion on to the sort of enlightened bliss that can only be obtained though pure C programming. Right on…

Read in full here:

This thread was posted by one of our members via one of our news source trackers.

Most Liked

mafinar

mafinar

Ah, Beej’s guide. Brings back fond memories when I was struggling to learn network programming.

Where Next?

Popular General Dev topics Top

PragmaticBookshelf
No other text editor comes close to Vim for speed and efficiency. Make Vim the centerpiece of a Unix-based IDE, and discover new ways to ...
New
PragmaticBookshelf
Battle cost overruns, death marches, and legacy code monsters with novel ways to identify and prioritize technical debt, based on behavio...
New
PragmaticBookshelf
Don’t engineer by coincidence—design it like you mean it! Grounded by fundamentals and filled with practical design methods, this is the ...
New
PragmaticBookshelf
If you have trouble estimating cost or schedule for your projects, you are not alone. The question is this: who wants the estimate and wh...
New
PragmaticBookshelf
Two heads are better than one, but only if they’re working on the same problem. When pairing remotely, this requires a specialized enviro...
New
PragmaticBookshelf
Agile in a Flash cards teach leadership, teamwork, clean programming, agile approaches to problem solving, and tips for coaching agile te...
New
PragmaticBookshelf
To lead change, you need to expand your toolkit, and this book gives you the tools you need to make the transition from agile practitione...
New
PragmaticBookshelf
Programmers have to learn constantly; not just the stereotypical new technologies, but also the problem domain of the application, the wh...
New
PragmaticBookshelf
Lead and serve others with ease when you learn to manage yourself and become a modern manager. Johanna Rothman @jrothman This work ...
New
PragmaticBookshelf
Go beyond mere project management and improve teamwork, communication, and predictability in open source development. Make meetings and s...
New

Other popular topics Top

AstonJ
Or looking forward to? :nerd_face:
498 14002 274
New
Exadra37
I am thinking in building or buy a desktop computer for programing, both professionally and on my free time, and my choice of OS is Linux...
New
Exadra37
Please tell us what is your preferred monitor setup for programming(not gaming) and why you have chosen it. Does your monitor have eye p...
New
AstonJ
We have a thread about the keyboards we have, but what about nice keyboards we come across that we want? If you have seen any that look n...
New
AstonJ
There’s a whole world of custom keycaps out there that I didn’t know existed! Check out all of our Keycaps threads here: https://forum....
New
New
hilfordjames
There appears to have been an update that has changed the terminology for what has previously been known as the Taskbar Overflow - this h...
New
AstonJ
Curious what kind of results others are getting, I think actually prefer the 7B model to the 32B model, not only is it faster but the qua...
New
NewsBot
Node.js v22.14.0 has been released. Link: Release 2025-02-11, Version 22.14.0 'Jod' (LTS), @aduh95 · nodejs/node · GitHub
New
Fl4m3Ph03n1x
Background Lately I am in a quest to find a good quality TTS ai generation tool to run locally in order to create audio for some videos I...
New