int foo (int argc, …)vs int foo()vs int foo(void)в C

Итак, сегодня я понял (впервые, по общему признанию), что int foo()на самом деле отличается от int foo(void)тем, что первый допускает любое число входы, а второй позволяет ноль .

Игнорирует ли int foo()любые входные данные? Если да, то какой смысл разрешать эту форму функции? Если нет, то как вы можете получить к ним доступ и чем это отличается от наличия списка переменных аргументов (, например. что-то вродеint foo (int argc,...))?

5
задан starsplusplus 21 February 2014 в 12:47
поделиться