Errata for Draft 0.6 -------------------- S7.4 - This statement is incorrect: "Notice that, for an array, its name (e.g., letters) when used in an expression is equivalent to its address (e.g., &letters), which is equal to the address of its first element (e.g., &letters[0])." - The second of these (&letters) is not equivalent to the other two. For more information, see Q6.13 of Steve Summit's C FAQ (http://c-faq.com/). S7.7 - Example points to the address of temporary objects; these addresses are invalid once the function returns. - Change i and j to pointers *i and *j, and alter the function to suit. S10.3.2 - Not an error, but mention that the do-while form is superior to the if-else form (see Summit's C-FAQ Q10.4). Note that Marshall Cline gives the opposite recommendation in Q38.5 of his C++ FAQ Lite, (www.parashift.com/c++-faq-lite/), but I think Summit makes a more valid point. S11.6 - The multequal_complex() function is incorrect. S14.2.1 - vector_push_back is incorrect. Return value converts size_t to int - to fix it, make return value status only: 0 if success, -1 if fails. (For corrected version see online code.) S15.3 - link-list insert_after() is incorrect. Will crash if node->next is NULL - to fix it, test whether next == NULL before accessing next->prev. (For corrected version see online code.)