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

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

Войти
Регистрация
Восстановить пароль
 
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
#1

Про указатели . - C++

16.05.2010, 00:27. Просмотров 455. Ответов 2
Метки нет (Все метки)

Всем привет:
Продолжаю свою традицию:
Вот придумал необычную задачку,
может кому то она покажется неинтересной, сложная или простая судить не мне.
Задачка на 8 спасибов....
Вообщем суть такова.

Есть не кий указатель: double *******ptr ; /*Да да именно не простой указатель, у вас не троиться
и не двоиться.
*/
От вас требуется следующее:

Создать функцию принимающую этот указатель в качестве выходного параметра,
эта функция должна выделить память под объект(возможно и не только под объект) типа double,
инициализировать его значением 65.5.
Указатель ptr после завершения вашей функции, должен хранить
адрес памяти позволяющей осуществить доступ, к выделенной под ваш объект памяти(хранящей 65.5).

С помощью указателя ptr: осуществите косвенный доступ к памяти: выведите значение
переменной под, которую выделялась память, должно быть показано 65.5

Подсказка:
Одним оператором new решить задачу, у меня не получилось.
В моей программе количество операторов new больше 1 и даже > 2
Решение делайте на C++.

В конце main не забудьте сделать delete для всей выделенной памяти.
Портить тему не следует~: эффект бумеранга может настигнуть.

Не по теме:


Если вам интересен ответ: могу выложить когда ваши идеи и решения....,
а может и моего ответа не потребуется.
Только задумываюсь, а стоит его выкладывать: решение:
в прошлой моей импровизации про матрицу,
мне откровенно сказали много нехороших слов, на знаю за что.

И еще меня упрекали, что я чего то не договариваю,
если бы учителя все договаривали возможно задачи бы решались сразу: списывались сходу,
и форумов бы не было.

Еще меня упрекали, что я ограничивал в способах решения(голословие), решайте как
можете у меня свой способ.

Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2010, 00:27     Про указатели .
Посмотрите здесь:

Вопрос про указатели C++
C++ Вопрос про указатели
C++ Опят про указатели)
Вопрос про указатели на массивы C++
C++ 2 вопроса про скорость - указатели и строки
Про указатели C++
C++ Про указатели с использованием функции
Расскажите популярно про ссылки и указатели C++
Популярно объясните про указатели C++
Пояснить про указатели и ссылки C++
Про указатели C++
Подскажите хорошую статью про указатели и ссылки C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Эксперт С++
9455 / 5468 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
16.05.2010, 00:38     Про указатели . #2
Genius Ignat, честно говоря не понял, в чём прикол. Десять раз разыменовать указатель и ни разу не запутаться?

Не по теме:

"... Вы, профессор, воля Ваша, что-то нескладное сочинили. Оно может и умно', да уж больно не понятно. Над Вами же потешаться будут!" (с) М. Булгаков "Мастер и Маргарита"

Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
16.05.2010, 12:02  [ТС]     Про указатели . #3
Genius Ignat, честно говоря не понял, в чём прикол. Десять раз разыменовать указатель и ни разу не запутаться?
Потешаться не будут об этом я не беспокоюсь.
Думаю ни кому неинтересно, не буду тянуть кота за ..., вот ответ ня:

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
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
using namespace std;
void c_proc(double ********ptr);
 
int main(){
double *******ptr = NULL;
c_proc(&ptr);
cout<<*******ptr<<'\n';
 
delete ******ptr;  
delete *****ptr;  
delete ****ptr;   
delete ***ptr;     
delete **ptr;     
delete *ptr;      
delete ptr;       
 
 
return 0;
}
 
void c_proc(double ********ptr){
double *******i = new double ******; 
double ******s = new double *****; 
double *****q = new double ****; 
double ****k = new double ***; 
double *** p = new double **; 
double **r = new double *;     
*r = new double(65.5);
 
*p = r;                 
*k = p;              
*q = k;               
*s = q;                 
*i = s;             
 
*ptr = i;              
}
easybudda:
Тему можно считать закрытой, короче говоря не хватило у меня фантазии на более интересное.
Yandex
Объявления
16.05.2010, 12:02     Про указатели .
Ответ Создать тему
Опции темы

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