Рубрики

Как я могу вернуть несколько значений из функции?

Все мы знаем, что функция в C может возвращать только одно значение. Так как же нам достичь цели возврата нескольких значений?
Ну, во-первых, взгляните на объявление функции.

int foo(int arg1, int arg2);

Таким образом, мы можем заметить, что наш интерфейс к функции — только через аргументы и возвращаемое значение. (Если только мы не поговорим об изменении глобалов внутри функции)

Давайте взглянем глубже … Хотя функция может возвращать только одно значение, но это значение может иметь тип указателя. Это верно, теперь вы правы!
Мы можем объявить функцию так, чтобы она возвращала пользовательскую переменную структурного типа или указатель на нее. И благодаря свойству структуры мы знаем, что структура в C может содержать несколько значений асимметричных типов (то есть одну переменную типа int, четыре переменные типа char, две переменные типа float и т. Д.)

Рекомендуемые посты:

Как я могу вернуть несколько значений из функции?

0.00 (0%) 0 votes