Home > Store

Learn C the Hard Way: Practical Exercises on the Computational Subjects You Keep Avoiding (Like C)

Register your product to gain access to bonus material or receive a coupon.

Learn C the Hard Way: Practical Exercises on the Computational Subjects You Keep Avoiding (Like C)

Book

  • Sorry, this book is no longer in print.
Not for Sale

eBook

  • Your Price: $30.39
  • List Price: $37.99
  • Includes EPUB and PDF
  • About eBook Formats
  • This eBook includes the following formats, accessible from your Account page after purchase:

    ePub EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

    Adobe Reader PDF The popular standard, used most often with the free Acrobat® Reader® software.

    This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

About

Features

  • By top blogger and outstanding teacher Zed Shaw
  • CD contains 5+ hours of teaching video
  • Refined through Shaw's years of instructional work online, where he attracts thousands of visitors per day: an older online version of this book earned 500K+ downloads

Description

  • Copyright 2016
  • Dimensions: 7" x 9-1/8"
  • Pages: 384
  • Edition: 1st
  • Book
  • ISBN-10: 0-321-88492-2
  • ISBN-13: 978-0-321-88492-3

You Will Learn C!

Zed Shaw has crafted the perfect course for the beginning C programmer eager to advance their skills in any language. Follow it and you will learn the many skills early and junior programmers need to succeed–just like the hundreds of thousands of programmers Zed has taught to date! You bring discipline, commitment, persistence, and experience with any programming language; the author supplies everything else.

In Learn C the Hard Way, you’ll learn C by working through 52 brilliantly crafted exercises. Watch Zed Shaw’s teaching video and read the exercise. Type his code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you’ll learn what good, modern C programs look like; how to think more effectively about code; and how to find and fix mistakes far more efficiently. Most importantly, you’ll master rigorous defensive programming techniques, so you can use any language to create software that protects itself from malicious activity and defects.

Through practical projects you’ll apply what you learn to build confidence in your new skills. Shaw teaches the key skills you need to start writing excellent C software, including

  • Setting up a C environment
  • Basic syntax and idioms
  • Compilation, make files, and linkers
  • Operators, variables, and data types
  • Program control
  • Arrays and strings
  • Functions, pointers, and structs
  • Memory allocation
  • I/O and files
  • Libraries
  • Data structures, including linked lists, sort, and search
  • Stacks and queues
  • Debugging, defensive coding, and automated testing
  • Fixing stack overflows, illegal memory access, and more
  • Breaking and hacking your own C code

It’ll Be Hard at First. But Soon, You’ll Just Get It–And That Will Feel Great!

This tutorial will reward you for every minute you put into it. Soon, you’ll know one of the world’s most powerful programming languages. You’ll be a C programmer.

Watch Zed, too! The accompanying DVD contains 5+ hours of passionate, powerful teaching: a complete C video course! If you purchase the digital edition, be sure to read "Where Are the Companion Content Files" at the end of the eBook to learn how to access the videos. 

Extras

Companion Site

Please visit the author's site.

Sample Content

Sample Pages

Download the sample pages (includes Exercises 1 and 2 and Index)

Table of Contents

  • Exercise 0: The Setup           
  • Exercise 1: Dust Off That Compiler          
  • Exercise 2: Using Makefiles to Build          
  • Exercise 3: Formatted Printing          
  • Exercise 4: Using a Debugger         
  • Exercise 5: Memorizing C Operators         
  • Exercise 6: Memorizing C Syntax           
  • Exercise 7: Variables and Types             
  • Exercise 8: If, Else-If, Else           
  • Exercise 9: While-Loop and Boolean Expressions          
  • Exercise 10: Switch Statements          
  • Exercise 11: Arrays and Strings           
  • Exercise 12: Sizes and Arrays           
  • Exercise 13: For-Loops and Arrays of Strings          
  • Exercise 14: Writing and Using Functions             
  • Exercise 15: Pointers, Dreaded Pointers          
  • Exercise 16: Structs and Pointers to Them            
  • Exercise 17: Heap and Stack Memory Allocation          
  • Exercise 18: Pointers to Functions              
  • Exercise 19: Zed’s Awesome Debug Macros          
  • Exercise 20: Advanced Debugging Techniques            
  • Exercise 21: Advanced Data Types and Flow Control           
  • Exercise 22: The Stack, Scope, and Globals            
  • Exercise 23: Meet Duff’s Device           
  • Exercise 24: Input, Output, Files          
  • Exercise 25: Variable Argument Functions           
  • Exercise 26: Project logfind           
  • Exercise 27: Creative and Defensive Programming           
  • Exercise 28: Intermediate Makefiles           
  • Exercise 29: Libraries and Linking       &

Updates

Errata

Please download the errata files associated with Learn C the Hard Way here.

Submit Errata

More Information

InformIT Promotional Mailings & Special Offers

I would like to receive exclusive offers and hear about products from InformIT and its family of brands. I can unsubscribe at any time.