Warning: Declaration of action_plugin_subjectindex_indexer::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php on line 15

Warning: Declaration of action_plugin_mathjax_enable::register(Doku_Event_Handler &$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/mathjax/action/enable.php on line 62

Warning: Declaration of action_plugin_googleanalytics::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/googleanalytics/action.php on line 40

Warning: Declaration of action_plugin_folded::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/folded/action.php on line 40

Warning: Declaration of action_plugin_hidden::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/hidden/action.php on line 28

Warning: Declaration of action_plugin_include::register(&$controller) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/include/action.php on line 354

Warning: Declaration of action_plugin_tag::register(&$contr) should be compatible with DokuWiki_Action_Plugin::register(Doku_Event_Handler $controller) in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/tag/action.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php:15) in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/auth.php on line 532

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/auth.php on line 818

Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/parser/handler.php on line 1376

Warning: Declaration of SI_EntryDefault::match($text) should be compatible with SI_Entry::match() in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/plugins/EntryDefault.php on line 68

Warning: Declaration of SI_EntryTag::match($text) should be compatible with SI_Entry::match() in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/plugins/EntryTag.php on line 42

Warning: Declaration of SI_EntryVerse::match($text) should be compatible with SI_Entry::match() in /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/plugins/EntryVerse.php on line 1280

Warning: preg_match(): Compilation failed: invalid range in character class at offset 4360 in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/parser/lexer.php on line 118
A PCRE internal error occured. This might be caused by a faulty plugin

Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/28604/virtual/www/subdom/bo/lib/plugins/subjectindex/action/indexer.php:15) in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/actions.php on line 215
lcthw:index [Bo.bule]

======Learn C The Hard Way====== This is the in-progress free version of Learn C the Hard Way. It was just converted to a new format so things might be missing or formatted wrong. Email help@learncodethehardway.org to report any problems. ======Table Of Contents====== * Preface * Introduction: The Cartesian Dream Of C * Exercise 0: The Setup * Exercise 1: Dust Off That Compiler * Exercise 2: Make Is Your Python Now * Exercise 3: Formatted Printing * Exercise 4: Introducing Valgrind * Exercise 5: The Structure Of A C Program * Exercise 6: Types Of Variables * Exercise 7: More Variables, Some Math * Exercise 8: Sizes And Arrays * Exercise 9: Arrays And Strings * Exercise 10: Arrays Of Strings, Looping * Exercise 11: While-Loop And Boolean Expressions * Exercise 12: If, Else-If, Else * Exercise 13: Switch Statement * 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: A Simple Object System * Exercise 20: Zed's Awesome Debug Macros * 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: Write A First Real Program * Exercise 27: Creative And Defensive Programming * Exercise 28: Intermediate Makefiles * Exercise 29: Libraries And Linking * Exercise 30: Automated Testing * Exercise 31: Debugging Code * Exercise 32: Double Linked Lists * Exercise 33: Linked List Algorithms * Exercise 34: Dynamic Array * Exercise 35: Sorting And Searching * Exercise 36: Safer Strings * Exercise 37: Hashmaps * Exercise 38: Hashmap Algorithms * Exercise 39: String Algorithms * Exercise 40: Binary Search Trees * Exercise 41: Using Cachegrind And Callgrind For Performance Tuning * Exercise 42: Stacks and Queues * Exercise 43: A Simple Statistics Engine * Exercise 44: Ring Buffer * Exercise 45: A Simple TCP/IP Client * Exercise 46: Ternary Search Tree * Exercise 47: A Fast URL Router * Exercise 48: A Tiny Virtual Machine Part 1 * Exercise 48: A Tiny Virtual Machine Part 2 * Exercise 50: A Tiny Virtual Machine Part 3 * Exercise 51: A Tiny Virtual Machine Part 4 * Exercise 52: A Tiny Virtual Machine Part 5 * Next Steps * Deconstructing K&R C ======Frequently Asked Questions====== How long does this course take? You should take as long as it takes to get through it, but focus on doing work every day. Some people take about 3 months, others 6 months, and some only a week. What kind of computer do I need? You will need either an OSX or Linux computer to complete this book. Copyright (C) 2010 Zed. A. Shaw Credits


Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /data/web/virtuals/28604/virtual/www/subdom/bo/inc/auth.php on line 818
lcthw/index.txt · Last modified: 2013/03/10 01:00 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0