Чем отличается объявление функции
int main(){}
От
int main(void){}
?
Вроде все то же самое, но часто попадается в исходниках последнее. Если нет разницы, зачем писать лишнее?
void foo(void);
Это правильный путь объявления функции без параметров в С, С++.
С другой стороны:
void foo();
Имеет разное значение в С и С++! В С это означает "может принимать любое количество параметров неизвестных типов", в С++ имеет тот же смысл что и foo(void).
Функции с переменным количеством аргументов по своей сути являются небезопасными, и их следует избегать, когда это только возможно.
Source
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости