| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > Обмен указателей |
| Автор: tofreesky 2.9.2010, 22:14 |
| Вопрос решен |
| Автор: bsa 2.9.2010, 23:48 |
| операция ARRAY_A[1] = ARRAY_A[0] присваивает первому элементу массива, на который ссылается указатель ARRAY_A, значение нулевого. Значение указателя при этом не меняется. Если тебе нужно присвоить указатели, то это делается так: STRUCTA = ARRAY_A. P.S.: рекомендую почитать http://forum.vingrad.ru/forum/index.php?show_type=forum&showtopic=269794&kw=faq-c++, в частности, про указатели и оформление кода (у тебя типы не отличаются от переменных). |
| Автор: tofreesky 3.9.2010, 18:50 |
| Тут вообще как таковых указателей нету, они просто нигде не хранятся, есть только базовый адрес. Так что указатели тут не перемешаешь. Верно? Ответов что-то мало |
| Автор: mes 3.9.2010, 19:03 |
потому что не там ищете.. на подобные вопросы все ответы уже давно даны в книжках, в крайнем случае (для ленивых) в FAQ форума |
| Автор: tofreesky 3.9.2010, 19:09 |
| Ответьте да или нет на мой третий пост. |
| Автор: alexvs11 3.9.2010, 22:17 |
велосипед какойто, непонятно на что оно надо |
| Автор: mes 3.9.2010, 22:46 |
для начала задайте его корректно. догадываться или описывать все нет ни времени ни желания. |
| Автор: bsa 3.9.2010, 23:24 | ||
НЕТ, не верно. Читай статью об указателях в часто задаваемых вопросах. А лучше, читай литературу, ее список можно найти там же.
|
| Автор: tofreesky 4.9.2010, 11:30 |
| Исходник в первом сообщении. Я хочу перемешать указатели на структуры. Такое в принципе НЕ ВОЗМОЖНО. Ведь указатели нигде не хранятся. Есть только базовый адрес памяти. Так что, либо я дурак, либо Комодератор выше не компитентен? Можешь тогда объяснить как это возможно? Перемешать указатели на структуры которых просто нету. |
| Автор: tofreesky 4.9.2010, 18:26 |
| Вам из кода ничего не понятно? Мы виделем память под N структур, потом я хочу перемешать указатели на эти структуры а не сами структуры, а потом до меня дошло что указателей то в принципе нету, кроме как на памяти выделенную. Так что изначально я пытался сделать невозможное. |
| Автор: mes 4.9.2010, 19:06 |
понятно. и даже то, что Вам не понятно происходящее из за чего и приходят некоректные вопросы но проблема не в том, что пытались сделать невозможное, а в непонимании происходящего. |
| Автор: bsa 5.9.2010, 23:57 | ||
| tofreesky, указатель, это такая переменная, которая содержит адрес какого-то объекта. Тип объекта может быть любым. В том числе и указателем. Таким образом, чтобы "перемешать указатели", тебе нужно сначала сделать массив указателей (A * *array = new A[10]), затем присвоить им адреса соответствующих объектов, а уж потом "перемешивать". Добавлено через 36 секунд
|