Posledično izvajalni klic variadne funkcije v slogu C, ki posreduje neprimerne argumente, prinese nedefinirano vedenje. … Tako nedefinirano vedenje bi lahko izkoristili za izvajanje poljubne kode.
Kaj je variadna funkcija v C?
Variadne funkcije so funkcije, ki lahko sprejmejo spremenljivo število argumentov. Pri programiranju C variadna funkcija doda fleksibilnost programu. Potreben je en fiksni argument, nato pa se lahko posreduje poljubno število argumentov.
Ali so variadne funkcije slabe?
Razlogi so: Variadne funkcije predloge poznajo število in vrste svojih argumentov. So vrstno varni, ne spreminjajte vrst njihovih argumentov.
Kako deklarirate variadno funkcijo v C++?
Variadne funkcije so funkcije (npr. std::printf), ki sprejmejo spremenljivo število argumentov. Če želite razglasiti variadno funkcijo, se za seznamom parametrov prikaže 3 trije, npr. int printf(const char format…);, pred katerim je lahko izbirna vejica.
Kako posredujete variadne parametre drugi funkciji?
Variadne funkcije ne morete posredovati spremenljivih argumentov. Namesto tega morate poklicati funkcijo, ki vzame va_list kot argument. Standardna knjižnica ponuja različici printf in scanf, ki sprejmeta va_list; njihova imena imajo predpono v.