Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2011, 23:41   #1
Lucky777
Пользователь
 
Регистрация: 30.11.2010
Сообщений: 48
По умолчанию Ф-я с переменным количеством параметров..

Как написать ф-ю с переменным количеством параметров?
Раньше не возникало такого вопроса, а теперь хотелось бы написать ф-ю нахождения минимума, но чтобы задавать разное количество параметров. Всем спасибо за внимание...
Lucky777 вне форума Ответить с цитированием
Старый 01.06.2011, 23:46   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Создать несколько функций (с одним именем) с разным количеством параметров? Язык-то, кстати, какой?)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 01.06.2011, 23:46   #3
Valio
Сливочное масло
Участник клуба
 
Аватар для Valio
 
Регистрация: 01.01.2011
Сообщений: 1,149
По умолчанию

Перегружай функции.

А про какие параметры идёт речь? Может просто стоит продумать тип передачи параметров (массив, запись и пр)..
Сливочное масло Valio - компиляция как по маслу
Valio вне форума Ответить с цитированием
Старый 01.06.2011, 23:48   #4
Lucky777
Пользователь
 
Регистрация: 30.11.2010
Сообщений: 48
По умолчанию

Язык C++, а ф-я должна быть одна, но на вход чтобы можно было подавать разное кол-во параметров.
Lucky777 вне форума Ответить с цитированием
Старый 01.06.2011, 23:51   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну так это и называется перегруженная функция: несколько функций с одним именем, но разным кол-вом (или типом) параметров. В зависимости от того с какими параметрами вызовите, такая и сработает.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.06.2011, 00:06   #6
Lucky777
Пользователь
 
Регистрация: 30.11.2010
Сообщений: 48
По умолчанию

Ф-я должна объявляться так:
min(n, ...){}
va_list ap; /* указатель на безымянные аргументы */
Но вот как оно работает я не могу пока понять...
Подключается библиотека: #include <stdarg.h>
Lucky777 вне форума Ответить с цитированием
Старый 02.06.2011, 00:10   #7
Lucky777
Пользователь
 
Регистрация: 30.11.2010
Сообщений: 48
По умолчанию

Что нибудь знаете о том как это реализовывается?
Lucky777 вне форума Ответить с цитированием
Старый 02.06.2011, 02:21   #8
Lucky777
Пользователь
 
Регистрация: 30.11.2010
Сообщений: 48
По умолчанию

Ответьте, пожалуйста, кто знает...
Lucky777 вне форума Ответить с цитированием
Старый 02.06.2011, 03:07   #9
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Макросы используйте, которые определены в stdarg.h; Информации про них можно найти в поиске.
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума Ответить с цитированием
Старый 02.06.2011, 07:16   #10
Swarog
Форумчанин
 
Аватар для Swarog
 
Регистрация: 26.01.2010
Сообщений: 215
По умолчанию

не знаю как на си на делфи для реализации функции с переменным числом аргументов используются массивы, точнее число аргументов остается одинаковым а вот размер массива в аргументе может быть любым

вызов осуществляется допустим так ...
Код:
StrIn(getEnter(tss),['(','-','id','lit'])
а вот как эта функция определяется

Код:
function StrIn(Text: string; const arr: array of string): boolean;
var
 i: integer;
begin
 result := false;
 for i := 0 to high(arr) do
  if text = arr[i] then
   begin
    result := true;
    exit;
   end;
end;
Могу лишь пнуть в нужном направлении (ну или как получится)
Swarog вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функция с переменным числом параметров Veselyn Общие вопросы C/C++ 1 08.04.2010 16:36
Функция с переменным числом параметров С++ [CODER] Помощь студентам 3 22.03.2010 03:58
Функции с переменным числом параметров Matr1x Общие вопросы C/C++ 2 07.01.2010 16:55
Циклы с переменным количеством шагов Froost Общие вопросы Delphi 1 10.11.2009 19:30
Процедуры с переменным числом параметров Pascal Сергей089 Помощь студентам 2 04.04.2009 19:47