В функции, которая принимает несколько аргументов одного и того же типа, как мы можем гарантировать, что вызывающий абонент не испортил порядок?
Например
void allocate_things(int num_buffers, int pages_per_buffer, int default_value ...
и позже
// uhmm.. lets see which was which uhh..
allocate_things(40,22,80,...