Форум программистов, компьютерный форум CyberForum.ru

Функция с переменным числом параметров, как узнать кличество переданных параметров? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ программа по непонятным мне причинам работает неверно http://www.cyberforum.ru/cpp-beginners/thread799991.html
#include <cstdio> #include <iostream> #include <clocale> using namespace std; int main() { setlocale(LC_ALL, "Russian"); char s;
C++ Шаблоны и статик Добрый вечер. Вот кусочек кода, почему то переменная dx постоянно обнуляется хотя она static. В чем проблема? template <class T, int n> void init (T (&arr) ) { static int dx; dx++; for (int i=0;i<n;i++) { *(arr+i)=i*dx; http://www.cyberforum.ru/cpp-beginners/thread799988.html
Строка: Удалить лишние пробелы между словами C++
Задание: нужно удалить лишние пробелы между словами (если один пробел, то его нужно оставить). # include <conio.h> # include <cctype> # include <iostream> using namespace std; void DeletSpace (char str );
C++ Число int перевести в hex и хранить в char
Есть число в десятичном формате, допустим int a. Необходимо его в Hex формате положить в char. Рассматриваются только те случаи когда число влезает в char формат.
C++ Проблемы с переполнением http://www.cyberforum.ru/cpp-beginners/thread799961.html
Программа реализует ряд Фибоначчи с остановкой после переполнения unsigned long. Но она, почему-то, даже после выхода за диапазон продолжает вычисления. Подскажите, пожалуйста, в чем ошибка #include <iostream> #include <stdlib.h> #include <limits.h> #include <stdio.h> #include <string> using namespace std; int main () {
C++ Перестановка символов строки Здравствуйте, ищу помощи с мое задачей, все сделал но не работает один момент. Задание для подпрограммы - получить новую строку путем вставки символа "!" через каждые 3 символа имеющееся строки. Проблема с функцией char* prog. Заранее спасибо. #include <iostream> using namespace std; void prog( int mas, int M , int N){ int a = 0; int b = 0; cout << "Enter 1 column number to... подробнее

Показать сообщение отдельно
fuelcs
12 / 12 / 0
Регистрация: 23.01.2013
Сообщений: 143
04.03.2013, 16:16  [ТС]     Функция с переменным числом параметров, как узнать кличество переданных параметров?
Вроде разобрался, получилось так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int suma (int n, ...)
{
    int s=0;
    int last=0;
    va_list value;
    va_start(value,n);
    for (int i=0;i<n-1;i++)
    {
        if (i==0)
        {
            last=va_arg(value,int);
        }
        int temp=va_arg(value,int);
        s+=last*temp;
        last=temp;
    }
    va_end(value);
    return s;
}
Добавлено через 2 часа 36 минут
Хотел кое что уточнить...
Как я понимаю при обращении:
C++
1
va_arg(value,int)
указатель value смещается на размер инта?
Что делать если нужно в функции повторно использовать аргументы?
Так:
C++
1
va_start(value,n);
?
 
Текущее время: 02:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru