title: When should we use asserts in C?
body: <p>I am writing a function in C. As a matter of style, when is it good to use assert compared to returning an error code. Lets say the function is dividing two numbers. Should I assert the divisor be non-zero or should I return an error code?
  Please give more examples, if you can, to make the distinction clear.</p>