Форум программистов, компьютерный форум, киберфорум
Наши страницы

Работа функции с переменным числом параметров - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Замена двойных пробелов из входного файла на одиночный пробел и запись в выходной файл (объяснить работу кода) http://www.cyberforum.ru/cpp-beginners/thread813063.html
Здравствуйте, нашла код программы, которая заменяет в файле Input.txt двойные пробелы в исходном файле на одиночные пробелы и выводит это все в файл Output.txt. Помогите пожалуйста разобраться, как...
C++ Массив char + перевод в int Нужно создать цикл в котором при вводе с клавиатуры символа в 16ричной системе (0-F) это число: 1. Переводилось в 10-ю систему счисления, типа int 2. Создавался элемент массива с этим 10чным числом... http://www.cyberforum.ru/cpp-beginners/thread813062.html
C++ no operator ">>" matches these operands
Есть код с структурой. Всё неплохо идет, вроде, но когда пытаюсь ввести массив из 5 оценок здесь :Student * Amark = new Student ; for (int i = 0; i < a; i++) { for ( int j = 0; j < iSize;...
C++ Цикл в цикле? Каков лучший вариант?
Господа, поделитесь опытом, пожалуйста, для общего блага среди начинающих. Как лучше ввсего организовать цикл в цикле для решения такой задачи: есть два вектора, необходимо сравнивать каждый...
C++ Почему нет ошибки? http://www.cyberforum.ru/cpp-beginners/thread813047.html
Добрый вечер. В MS VC++ случайно написал нечто подобное: //... int a, b, c; //... a = b; + c; и скомпилировал. Самое странное, что мне не выдалось никакого сообщения об ошибке! Как это...
C++ Зачем нужно явно указывать тип переменной? Всем привет! Объясните зачем нужно явно указывать тип переменной? Например в С++ это обязательно, а php нет. Просто говорят что не указывать тип явно приводит к не лучшему исходу. Почему? И важно... подробнее

Показать сообщение отдельно
UrbanLynx
1 / 1 / 0
Регистрация: 13.02.2013
Сообщений: 29

Работа функции с переменным числом параметров - C++

19.03.2013, 20:20. Просмотров 381. Ответов 3
Метки (Все метки)

Добрый вечер!
Есть функция создающая квадратную матрицу, по числу параметров и самим элементам. Опущу все проверки и другое, не важное здесь:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
double **getmatrix(int n, ...)            
{  
    int *p = &n;
    p++;               
    double *pp = (double *)p;    
 
    double **m = NULL;
    NewMatrix(m,4,4); 
    for (int i=0; i<4; i++)
    {
        for (int j=0; j<4; j++)
        {
            m[i][j] = (*pp);
        }
    }
    return m;
}
 
void NewMatrix(double **&mMatrix,int Rows, int Cols)
{
    mMatrix = new double *[Rows];   
    for (int i=0; i<Rows; i++)
    {
        mMatrix[i] = new double [Cols];
    }
}
Вызов например так:
C++
1
double **m=getmatrix(16,1.,0.,0.,0.,0.,1.,0.,0.,0.,0.,1.,0.,4.,0.,0.,1.);
Функция прекрасно работает в пустом консольном проекте с одним мэйном, собственно матрицей строчкой выше и двумя функциями.
Теперь самое интересное - есть win forms приложение и в какой-то момент вызывается эта функция с этими же аргументами. Но при переходе к следующему за n числу(p++) переходит на какой то левый адрес, где числа нет.
Что подскажете по этому поводу?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.