Почему следующий код возвращает ошибку, когда переменная объявляется глобальной.функция назначает переменной в C
int add(int x, int y) {
return x+y;
}
int ab = add(10, 20);
int main(void) {
printf("%d", ab);
}
Но если я называю так:
int add(int x, int y) {
return x+y;
}
int main(void) {
int ab = add(10, 20); // Variable declare inside main
printf("%d", ab);
}
то выполняется без ошибок.
Параметры области видимости файла могут быть инициализированы только постоянными выражениями. Вызов функции не один. –