Зачем здесь символ; Где ошибка?

int* A = new int[5, 4, 6, 1, 3, 2, 6];
int p, r, q;

void foo(int* A, int p, int q, int r);

foo(A, 1, 2, 3) 
{		// Пишет, что ошибка - здесь нужно поставить символ ;
}

С чего ради такая ошибка?
  • Вопрос задан
  • 134 просмотра
Решения вопроса 1
@Griglapidus
foo(A, 1, 2, 3) выглядит как вызов функции а не определение. И ошибка возникает изза того что в конце этой строки нет ;

если вы хотели объявить функцию, а потом её определить, то запись должна быть такой же:

void foo(int* A, int p, int q, int r); // объявление
/*
  код в котором используется foo();
*/
void foo(int* A, int p, int q, int r) // определение
{

}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@XTerris
После вызова функции нужно ставить ";", как, собственно, после любого выражения.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы