Advanced C Programming

Fall 2022 ECE 264 :: Purdue University :: Section 3 (Quinn)

⚠ This is a PAST SEMESTER (Fall 2022).

Resources

ECE 264

Past exams, quizzes, handouts

Reference sheet (v. 1.0.8, updated 8/22/2022)

Code Quality

Psychology of code readability (5/15/2018) by Egon Elbre

Code Quality & Readability by Kasper B Graversen

The Art of Giving and Receiving Code Reviews (Gracefully) (6/25/2018)

Other Code Quality Standards

Vim

Tutorial: OpenVim

Vim Adventures

Vim swap warnings

C programming tips

How To C in 2016 by Matt Stancliff

C Programming Tips by Philip Guo

Books

21st Century C book by Ben Klemens

The Pragmatic Programmer book by Hunt & Thomas

The Pragmatic Programmer - Quick Reference blog post by Jeff Atwood - FREE

Topics

variadic functions from CProgramming.com

variadic functions from GNU

variadic functions from CPlusPlus.com

printf from U of Toronto by Alan J. Rosenthal

#include guards from Wikipedia

number bases videos from Khan Academy

number bases from PurpleMath

number base calculator from Cleave Books

fputc from The Open Group

gdb from Richard M. Stallman

memory segments from Wikipedia - defines stack, heap, data segment, bss, text segment

struct from Wikipedia - good level of detail for ECE 264

struct initialization syntax in C99 from Dave Dribin - advanced, but nice examples

array and struct initialization syntax in C99 from GCC documentation - advanced

Programming interviews

The Five Essential Phone-Screen Questions list by Steve Yegge (Google engineer)

Algorithms interview questions at TopCoder

Baby Steps to a New Job by Gretta Cook (Google engineer)