Посмотрите на этот вопрос и попробуйте код:
int x = 100;
while ( 0 <-------------------- x )
{
    printf("%d ", x);
}
Я попытался скомпилировать с gcc и получил следующую ошибку:
file.c: In function 'main':
file:c:10:27: error: lvalue required as decrement operand
 while ( 0 <-------------------- x )
Но компиляция с помощью g++ работает. Почему этот код действителен в С++, но не C?
