When you write if statements in C, there is a very important ``catch''
that you need to watch out for. It is very important that you remember
to use ``=='' when to want know if two numeric values are equal. Why is
it so important? Because it's easy to write this:
if (a = b) ...
with only one ``='' sign, when you really mean to write this:
if (a == b) ...
What's wrong with writing ``if (a = b)''?
Click here for the answer.
Suppose that you are writing a program and need to know if the variable
delta is equal to zero. If you write this:
if (delta = 0.0) ...
what do you think will happen?
Click here for the answer.
The moral is to never confuse the ``='' assignment operator with the
``=='' comparison operator. Because it is so easy to mix up these
operators in if statements, some C compilers will warn you whenever you
use ``='' inside an if condition. But not all compilers are so
smart.
Joseph L. Zachary
Hamlet Project
Department of Computer Science
University of Utah