Quiz for document: Understanding C Pointers

Take this short quiz to find out whether you learned the key concepts in the document you just read. The document tested by this quiz is:
Understanding C Pointers
The quiz requires just a minute or two. By taking it, you not only find out whether you mastered the material, but help us determine whether the document meets its goals.

Question 1:
Memory allocated by a malloc call is freed:
  1. When the program releases its memory with a free call .
  2. When the program releases its memory with a free call or the function that issued the malloc call returns.
  3. When the program releases its memory with a free call, the function that issued the malloc call returns, or the pointer that points to the allocated memory wanders outside that memory.
  4. When the program releases its memory with a free call, the function that issued the malloc call returns, or the pointer that points to the allocated memory is reset to NULL.

Question 2:
If you create the following structure and want to pass it by reference to a function, you should put before the variable when you pass it as a parameter to the function:

                    struct _record {
                      char title[100];
                      char filename[255];
                      unsigned int example_num;
                    } *record;


How easy did you find it to read the document, Understanding C Pointers?

Comment (optional):
Your name (optional):
Your email address (optional):
Your name and email address will be used only by the quiz's authors to discuss the quiz, document, and related projects with you.