from
Jargon File (4.4.4, 14 Aug 2003)
gotcha
n.
A {misfeature} of a system, especially a programming language or
environment, that tends to breed bugs or mistakes because it is both
enticingly easy to invoke and completely unexpected and/or
unreasonable in its outcome. For example, a classic gotcha in {C} is
the fact that if (a=b) {code;} is syntactically valid and sometimes
even correct. It puts the value of b into a and then executes code if
a is non-zero. What the programmer probably meant was if (a==b)
{code;}, which executes code if a and b are equal.
from
The Free On-line Dictionary of Computing (8 July 2008)
gotcha
<jargon, programming> A {misfeature} of a system, especially a
programming language or environment, that tends to breed
{bugs} or mistakes because it both enticingly easy to invoke
and completely unexpected and/or unreasonable in its outcome.
For example, a classic gotcha in {C} is the fact that
if (a=b) {code;}
is syntactically valid and sometimes even correct. It puts
the value of "b" into "a" and then executes "code" if "a" is
non-zero. What the programmer probably meant was
if (a==b) {code;}
which executes "code" if "a" and "b" are equal.
[{Jargon File}]
(1995-04-17)