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

Указатели - C++

Восстановить пароль Регистрация
 
@Manya@
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 20
18.05.2010, 00:04     Указатели #1
Есть функция. Она делит 2 многочлена и находит остаток, который храниться в rem. len3 это его длина.
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
void remaind(int * const p, int len1, int *p22, int len2, int *rem, int &len3){
    int *p1 = new int [len1];
    int *p2 = new int [len2];
    for (int i=0; i<len1; i++)
        p1[i] = p[i];
    for (int i=0; i<len2; i++)
        p2[i] = p22[i];
    rotate(p1, len1);// поворачивает многочлен так, чтобы он был начиная со старшей степени
    rotate(p2, len2);// аналогично, только для многочлена p2
   int *ptr1;
   ptr1 = p1;
   int ii=0;
   while (len1>=len2)
   {
      int del = (int)(*ptr1/ *p2);
      for (int i=0; i<len2; i++)
         *(ptr1+i) -= del * p2[i];
      len1--;
      ptr1++;
   }
   rem = ptr1;
   len3 = len1;
   delete [] p2;
   delete [] p1;
}
Работает она верно. Но дело в том, что мне нужно, чтобы в качестве параметра она принимала указатель - rem. В самой функции с rem все в порядке, он такой, какой должен быть. А вот стоит только освободить память из-под p1, то убивается rem. Это происходит потому, что указатель ptr1 находится и ходит всегда внутри p1, а следовательно, освобождая память из-под p1, убивается rem. А вот это совершенно мне не нужно. Что делать?
Спасибо

Добавлено через 36 минут
Ну то есть конечно, можно копировать куда-то rem, только вот куда? Скажите пожалуйста, а то что-то тормозной таракан завелся
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.05.2010, 00:04     Указатели
Посмотрите здесь:

C++ Указатели
Указатели.... C++
C++ Указатели
Указатели C++
Указатели. C++
Указатели C++
C++ Указатели
C++ Указатели

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 23:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru