Skip to main content



n. A misfeature of a system, especially a programming language or environment, that tends to breed bugs or mistakes because it behaves in an unexpected way.

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.