Может кто-нибудь объяснить мне, почему следующий код компилируется без предупреждения или ошибки?
Я ожидаю, что компилятор предупредит меня, что функция no_args
не ожидает никаких аргументов.
Но код компилирует и запускает функцию no_args
рекурсивно.
static void has_args(int a, int b, int c) {
printf("has_args\n");
}
static void no_args() {
printf("no_args\n");
no_args(1, 2, 3);
}
void main() {
no_args();
}