Не дефинирайте променлива функция в стил c?

Съдържание:

Не дефинирайте променлива функция в стил c?
Не дефинирайте променлива функция в стил c?
Anonim

Следователно, извикване по време на изпълнение към променлива функция в стил C, която предава неподходящи аргументи, дава недефинирано behavior. … Такова недефинирано поведение може да бъде използвано за изпълнение на произволен код.

Какво е вариативна функция в C?

Вариадни функции са функции, които могат да приемат променлив брой аргументи. При програмирането на C една вариативна функция добавя гъвкавост към програмата. Необходим е един фиксиран аргумент и след това могат да бъдат предадени произволен брой аргументи.

Вариадни функции лоши ли са?

Причините са: Функциите с променливи шаблони знаят както броя, така и типа на своите аргументи. Те са тип-безопасни, не променяйте типа на аргументите си.

Как се декларира променлива функция в C++?

Вариадни функции са функции (напр. std::printf), които приемат променлив брой аргументи. За да декларирате променлива функция, се появява многоточие след списъка с параметри, напр. int printf(const char format…);, което може да бъде предшествано от незадължителна запетая.

Как предавате променливи параметри към друга функция?

Не можете да предавате променливи аргументи на променлива функция. Вместо това, трябва да извикате функция, която приема va_list като аргумент. Стандартната библиотека предоставя варианти на printf и scanf, които приемат va_list; имената им имат префикс v.

Препоръчано: