Почему переменная не обявляется?

lyovarm

#include <stdio.h>
#include <stdlib.h>
int main()
{
    system("CHCP 1251 >> 0");
    int x = 0;
    printf("%d",x);
    system("PAUSE >> VOID");
    return 0;
}
Выдает ошибку, но как только я обявляю x перед system("CHCP 1251 >> 0") все работает
3 ответа

lyovarm

lyovarm, у меня и так и так работает


lyovarm

вначале объявления потом код. начиная с С99 можно в любом месте программы


lyovarm

Выдает ошибку, но как только я обявляю x перед system("CHCP 1251 >> 0") все работает
Вы используете "старый" компилятор языка С стандарта С89/90, который требует, чтобы все локальные объявления располагались в начале блока.