Слушайте предупреждения вашего компилятора - надеюсь, что-то было об этой проблеме.Я получил следующее:
VS 2010 (MSVC 10), без каких-либо конкретных параметров уровней предупреждений:
C:\TEMP\test.c(20) : warning C4553: '==' : operator has no effect; did you intend '='?
GCC версии 3.4.5, которая, к сожалению, нуждается в некоторомW опция (например, -Wall) установлена:
C:\TEMP\test.c: In function `xstrrev':
C:\TEMP\test.c:20: warning: statement with no effect