O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learn C the Hard Way - Companion Videos

Video Description

These videos are companion files meant to be used with the book: Learn C the Hard Way. Search Safari for ISBN 9780133124385 to access the book first and then use these videos with the book.

Table of Contents

  1. Video Exercises
    1. Exercise 1: Dust Off That Compiler 00:19:17
    2. Exercise 2: Using Makefiles to Build 00:09:11
    3. Exercise 3: Formatted Printing 00:10:24
    4. Exercise 4: Using a Debugger 00:17:51
    5. Exercise 5: Memorizing C Operators 00:11:58
    6. Exercise 6: Memorizing C Syntax 00:12:21
    7. Exercise 7: Variables and Types 00:13:35
    8. Exercise 8: If, Else-If, Else 00:05:26
    9. Exercise 9: While-Loop and Boolean Expressions 00:04:17
    10. Exercise 10: Switch Statements 00:08:51
    11. Exercise 11: Arrays and Strings 00:08:41
    12. Exercise 12: Sizes and Arrays 00:09:10
    13. Exercise 13: For-Loops and Arrays of Strings 00:06:00
    14. Exercise 14: Writing and Using Functions 00:14:02
    15. Exercise 15: Pointers, Dreaded Pointers 00:40:36
    16. Exercise 16: Structs and Pointers to Them 00:19:41
    17. Exercise 17: Heap and Stack Memory Allocation 00:14:13
    18. Exercise 18: Pointers to Functions 00:12:16
    19. Exercise 19: Zed’s Awesome Debug Macros 00:20:24
    20. Exercise 20: Advanced Debugging Techniques 00:18:06
    21. Exercise 21: Advanced Data Types and Flow Control 00:07:54
    22. Exercise 22: The Stack, Scope, and Globals 00:10:37
    23. Exercise 23: Meet Duff’s Device 00:13:36
    24. Exercise 24: Input, Output, Files 00:11:12
    25. Exercise 25: Variable Argument Functions 00:07:00
    26. Exercise 26: Project logfind 00:19:34
    27. Exercise 27: Creative and Defensive Programming 00:24:13
    28. Exercise 28: Intermediate Makefiles 00:13:16
    29. Exercise 29: Libraries and Linking 00:10:46
    30. Exercise 30: Automated Testing 00:09:10
    31. Exercise 31: Common Undefined Behavior 00:06:34
    32. Exercise 32: Double Linked Lists 00:16:57
    33. Exercise 33: Linked List Algorithms 00:29:03
    34. Exercise 34: Dynamic Array 00:18:59
    35. Exercise 35: Sorting and Searching 00:17:21
    36. Exercise 36: Safer Strings 00:08:45
    37. Exercise 37: Hashmaps 00:16:06
    38. Exercise 38: Hashmap Algorithms 00:13:08
    39. Exercise 39: String Algorithms 00:08:31
    40. Exercise 40: Binary Search Trees 00:14:25
    41. Exercise 41: Project devpkg 00:10:36
    42. Exercise 42: Stacks and Queues 00:04:25
    43. Exercise 43: A Simple Statistics Engine 00:08:01
    44. Exercise 44: Ring Buffer 00:10:02
    45. Exercise 45: A Simple TCP/IP Client 00:14:26
    46. Exercise 46: Ternary Search Tree 00:06:16
    47. Exercise 47: A Fast URL Router 00:14:58
    48. Exercise 48A: A Simple Network Server—Project Description 00:08:03
    49. Exercise 48B: A Simple Network Server—Solution 00:29:53
    50. Exercise 49A: A Statistics Server—Project Description 00:05:48
    51. Exercise 49B: A Statistics Server—Solution 00:46:05
    52. Exercise 50A: Routing the Statistics—Project Description 00:03:46
    53. Exercise 50B: Routing the Statistics—Solution 00:34:26
    54. Exercise 51A: Storing the Statistics—Project Description 00:04:55
    55. Exercise 51B: Storing the Statistics—Solution 00:46:30
    56. Exercise 52A: Hacking and Improving Your Server—Project Description 00:13:32
    57. Exercise 52B: Hacking and Improving Your Server—Solution 00:24:22
    58. Exercise 52C: Hacking and Improving Your Server—Solution 00:10:37
    59. Next Steps 00:06:07