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
Going from engineer to manager doesn’t have to be intimidating. Engineers can be managers, and fantastic ones at that. Cast aside the rhe...
New
PragmaticBookshelf
You have a database console, web server, test runner, and text editor running at the same time, but switching between them and trying to ...
New
PragmaticBookshelf
You have too many projects, and firefighting and multitasking are keeping you from finishing any of them. You need to manage your project...
New
PragmaticBookshelf
Why do Roman numerals persist? How do we know that some infinities are larger than others? And how can we know for certain a program will...
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
Get up to speed on Git right now with Pragmatic Guide to Git. Here you’ll find the 95 percent of Git that you’ll use at least once a week...
New
PragmaticBookshelf
Programmers have to learn constantly; not just the stereotypical new technologies, but also the problem domain of the application, the wh...
New
Qqwy
Hey all! I came across this book yesterday, and bought the full version after reading the sample; currently roughly halfway through the b...
New
PragmaticBookshelf
Want to create a culture of innovation? Work as management teams and encourage learning and experimentation. Johanna Rothman @jroth...
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
PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
AstonJ
Curious to know which languages and frameworks you’re all thinking about learning next :upside_down_face: Perhaps if there’s enough peop...
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
PragmaticBookshelf
Learn different ways of writing concurrent code in Elixir and increase your application's performance, without sacrificing scalability or...
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
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
PragmaticBookshelf
Author Spotlight Mike Riley @mriley This month, we turn the spotlight on Mike Riley, author of Portable Python Projects. Mike’s book ...
New
PragmaticBookshelf
Author Spotlight Rebecca Skinner @RebeccaSkinner Welcome to our latest author spotlight, where we sit down with Rebecca Skinner, auth...
New
PragmaticBookshelf
Fight complexity and reclaim the original spirit of agility by learning to simplify how you develop software. The result: a more humane a...
New