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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
#1

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

17.12.2011, 15:35. Просмотров 546. Ответов 12
Метки нет (Все метки)

Объясните что происходит в последней строке , и если мои комменты не правильны поправьте пожалуйста.
C++
1
2
3
4
5
6
7
8
9
void order ( int* numb1, int* numb2 ) // сортировка двух чисел
{
  if ( *numb1 > *numb2 )              // тут сравниваются именно сами числа
  {
    int temp = *numb1;//в темп записывается число
    numb1 = numb2;//указатель намб1 указывает на участок памяти на который указывал намб2 ?
    numb2 = temp;// а что тут?? , указатель на число?
  }
}
Указатель же указывает только на адрес правильно?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2011, 15:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатели* (C++):

Указатели и указатели на указатели, а также типы данных - C++
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс идет медленно. Накачал литературы, буду изучать) Щас...

Через указатели на указатели посчитать сумму двух чисел и записать в третье - C++
1. Через указатели на указатели посчитать сумму двух чисел и записать в третье. 2. Написать примитивный калькулятор, пользуясь только...

Есть три переменные. Используя указатели на указатели, поменять значение максимальной и минимальной переменной - C++
Мой код. #include <iostream> #include <stdlib.h> #include<iomanip> using namespace std; void min_max(int*pa, int*pb,...

Указатели на указатели с числами. Почему можно присвоить число в 4-ый элемент, если массив из 2 элементов? - C++
Есть массив int **mas; mas=new int*; // выделил место под пять строк, верно ? mas=new int;// выделил для первой строки матрицы два...

Отсортировать массив и вывести на экран (массивы и указатели на указатели) - C++
Даны массивы F-фамилий студентов и S-результаты сессии (5 оценок) , причем s- результат сессии F студента. Отсортировать массив S по...

Указатели на слонов или А зачем нужны указатели? - C++
Знаю что таких вопросов было уйма, но я так и не нашел ответа на свой вопрос. Для чего нужны указатели? Что такое указатели я знаю, это...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.12.2011, 15:38 #2
Цитата Сообщение от 2e1553ce Посмотреть сообщение
// а что тут?? , указатель на число?
тут у вас ошибка, несмотря на то что компилятор ошибки не выдаст
0
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
17.12.2011, 15:41  [ТС] #3
классно , теперь я во всем разобрался ..
а по подробней:>
правильно будет?
C++
1
numb=&temp;
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.12.2011, 15:45 #4
C++
1
2
3
int* temp = numb1;
numb1 = numb2;
numb2 = temp;
0
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
17.12.2011, 16:09  [ТС] #5
thank
0
taras atavin
Ушёл с форума.
3569 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
17.12.2011, 16:20 #6
C++
1
2
3
4
5
6
7
8
9
void order ( int* numb1, int* numb2 ) // сортировка двух чисел
{
  if ( *numb1 > *numb2 ) // тут сравниваются именно сами числа
  {
  int temp = *numb1;//
   numb1 = numb2;// 
   numb2 = temp;// указателю присваивается значение самого числа.
 }
}
0
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
17.12.2011, 16:38  [ТС] #7
Цитата Сообщение от taras atavin Посмотреть сообщение
C++
1
2
3
4
5
6
void order ( int* numb1, int* numb2 ) // сортировка двух чисел
{
 
   numb2 = temp;// указателю присваивается значение самого числа.
 }
}
Но это не правильно да ?
Он будет указывать не на адрес а на число?
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.12.2011, 16:41 #8
Цитата Сообщение от 2e1553ce Посмотреть сообщение
Но это не правильно да ?
неправильно, потому что указатель будет указывать на "чужую" память
0
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
17.12.2011, 16:44  [ТС] #9
чтото везде ошибку выдает
0
Jupiter
Каратель
Эксперт С++
6554 / 3975 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
17.12.2011, 16:56 #10
Цитата Сообщение от 2e1553ce Посмотреть сообщение
чтото везде ошибку выдает
 Комментарий модератора 
Телепатов здесь нет!
0
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
17.12.2011, 17:01 #11
Цитата Сообщение от 2e1553ce Посмотреть сообщение
чтото везде ошибку выдает
Если нужно обменять значения переменных, на которые указывают numb1 & numb2, то так:
C++
1
2
3
4
5
6
7
8
9
void order ( int* numb1, int* numb2 ) // сортировка двух чисел
{
  if ( *numb1 > *numb2 )              // тут сравниваются именно сами числа
  {
    int temp = *numb1;
    *numb1 = *numb2;
    *numb2 = temp;
  }
}
1
2e1553ce
1 / 1 / 1
Регистрация: 16.12.2011
Сообщений: 47
17.12.2011, 17:31  [ТС] #12
Цитата Сообщение от Net_Wanderer Посмотреть сообщение
Если нужно обменять значения переменных, на которые указывают numb1 & numb2, то так:
C++
1
2
3
4
5
6
7
8
9
void order ( int* numb1, int* numb2 ) // сортировка двух чисел
{
  if ( *numb1 > *numb2 )              // тут сравниваются именно сами числа
  {
    int temp = *numb1;
    *numb1 = *numb2;
    *numb2 = temp;
  }
}
Да да , чет в Р.Лафоре(по С++) столько опечаток..
0
Jupiter
17.12.2011, 17:35     Указатели*
  #13

Не по теме:

Цитата Сообщение от Net_Wanderer Посмотреть сообщение
Если нужно обменять значения переменных
эт...что-то меня на списки потянуло

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2011, 17:35
Привет! Вот еще темы с ответами:

Написать программу сортировки через указатели на указатели - C++
Вот моя программа #include <iostream> #include <conio.h> #include <string> using namespace std; //Сортировка "пузырьком". ...

Используются ли на практике указатели на указатели объектов? - C++
Имеются ввиду указатели именно на объекты, а не динамические массивы. Например такой: Object** obj; А как насчёт такого: Object***...

Указатели на массивы. Указатели и функции - C++
Вот задача: Даны два массива : А и B. Необходимо создать третий массив, в котором нужно собрать: -Элементы обоих массивов; -Общие...

Константные указатели и указатели на константу - C++
Чем они, собственно говоря, отличаются? Поясните, пожалуйста. Не знаю, как так получилось, что в разных источниках - разные...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.12.2011, 17:35
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru