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 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
You’ve worked on agile teams before, but how do you use these same practices with a distributed team? You don’t! Taking off-the-shelf pra...
New
PragmaticBookshelf
A book on mazes? Seriously? Yes! Because it’s fun. Remember when programming used to be fun? Explore a dozen algorithms for generating th...
New
PragmaticBookshelf
Jack the Ripper and legacy codebases have more in common than you’d think. With its unique blend of forensic psychology and code analysis...
New
PragmaticBookshelf
DevOps shows the IT world that developers and operations have a lot to learn about each other—and that can be highly positive for project...
New
PragmaticBookshelf
Whether you’re making the switch from a traditional centralized version control system or are a new programmer just getting started, this...
New
PragmaticBookshelf
Pragmatic programmers use feedback to drive their development and personal processes. The most valuable feedback you can get while coding...
New
PragmaticBookshelf
Your project can’t fail. That’s a lot of pressure on you, and yet you don’t want to buy into any one specific process, methodology, or li...
New
PragmaticBookshelf
ANTLR is a parser generator: a program that generates code to translate a specified input language into a nice, tidy data structure. You ...
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

Devtalk
Reading something? Working on something? Planning something? Changing jobs even!? If you’re up for sharing, please let us know what you’...
1051 21715 396
New
AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
PragmaticBookshelf
Use WebRTC to build web applications that stream media and data in real time directly from one user to another, all in the browser. ...
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
New
PragmaticBookshelf
Author Spotlight: Peter Ullrich @PJUllrich Data is at the core of every business, but it is useless if nobody can access and analyze ...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
PragmaticBookshelf
A concise guide to MySQL 9 database administration, covering fundamental concepts, techniques, and best practices. Neil Smyth MySQL...
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