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

New
PragmaticBookshelf
No matter what language or platform you’re using, the CLI will help you work more effectively. Turn tedious chores into quick tasks: read...
New
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
Few of the ideas presented here are controversial or extreme; most experienced programmers will agree that this stuff works. Yet 50 to 70...
New
PragmaticBookshelf
Learn how experienced Scrum masters balance the demands of servant leadership, while removing organizational impediments and helping Scru...
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
Want to create a culture of innovation? Work as management teams and encourage learning and experimentation. Johanna Rothman @jroth...
New
ManningBooks
Your brain responds in a predictable way when it encounters new or difficult tasks. The Programmer’s Brain teaches you concrete technique...
New
PragmaticBookshelf
_Your Code as a Crime Scene_ blends criminal psychology with code analysis to help you investigate and improve your code, software archit...
New
PragmaticBookshelf
Learn the tools and techniques of effective engineering leadership. James Stanier @jstanier edited by Adaobi Obi Tulton @aotulton A...
New

Other popular topics Top

New
AstonJ
poll poll Be sure to check out @Dusty’s article posted here: An Introduction to Alternative Keyboard Layouts It’s one of the best write-...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New
AstonJ
We’ve talked about his book briefly here but it is quickly becoming obsolete - so he’s decided to create a series of 7 podcasts, the firs...
New
AstonJ
If you get Can't find emacs in your PATH when trying to install Doom Emacs on your Mac you… just… need to install Emacs first! :lol: bre...
New
New
AstonJ
Was just curious to see if any were around, found this one: I got 51/100: Not sure if it was meant to buy I am sure at times the b...
New
New
PragmaticBookshelf
Author Spotlight: Karl Stolley @karlstolley Logic! Rhetoric! Prag! Wow, what a combination. In this spotlight, we sit down with Karl ...
New