Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1257 / 795 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
1

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

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

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

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

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

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

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

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

Не по теме:


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

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

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

0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2010, 00:27
Ответы с готовыми решениями:

Про указатели
В среде C++ Builder разбираюсь с логикой работы с указателями. По определению (в моем его...

Про указатели
Здравствуйте я совсем маленький C++ программер, вот сейчас разбираюсь с указателями. Подскажите...

Про массивы и указатели
#include <iostream> using namespace std; int Digit = {...

Вопрос про указатели
char *a = "s"; 1. Выделяется место в памяти 2. В это место записывается s 3. Указателю a...

2
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
10897 / 6813 / 1623
Регистрация: 25.07.2009
Сообщений: 12,515
16.05.2010, 00:38 2
Genius Ignat, честно говоря не понял, в чём прикол. Десять раз разыменовать указатель и ни разу не запутаться?

Не по теме:

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

0
1257 / 795 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
16.05.2010, 12:02  [ТС] 3
Лучший ответ Сообщение было отмечено Genius Ignat как решение

Решение

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:
Тему можно считать закрытой, короче говоря не хватило у меня фантазии на более интересное.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2010, 12:02

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вопрос про указатели
#include &lt;iostream.h&gt; int main() { int x; int *Pointer; pointer = &amp;x; cout &lt;&lt; pointer; cout...

Опят про указатели)
int a = 5; int *b =&amp;a; cout &lt;&lt;*b&lt;&lt;endl; *b++; cout &lt;&lt;*b&lt;&lt;endl; В строке 4 что...

Вопрос про указатели на массивы
В книге написано int a; int *p; p = &amp;a; //У меня выдает ошибку p = &amp;a; //Так работает p...

Про деструкторы перегрузку и указатели
Добрался чтоб связать темы динамическая память и классы и перегрузка на примере пользовательского...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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