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

объясните код - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.75
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
13.02.2010, 16:23     объясните код #1
не понятно что означает это
C++
1
2
int*pointer;
pointer=new int
Добавлено через 1 минуту
я как понял это обычный указатель где хранится адрес только на этот раз дин.память?

Добавлено через 3 минуты
хмм...
C++
1
2
new *pointer=int a;//создается указатель на А
delete poiner;//а удаляется из памяти?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2010, 16:23     объясните код
Посмотрите здесь:

Объясните код C++
C++ Объясните код
C++ Объясните код
Объясните код C++
C++ Объясните код
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
13.02.2010, 19:23  [ТС]     объясните код #21
Цитата Сообщение от PointsEqual Посмотреть сообщение
может я слепой, но не мог бы ты написать страницу с етой записью а то я такой строчки найти не могу.
не не,это опечатка

Добавлено через 37 секунд
PointsEqual,
Цитата Сообщение от МедведЪ Посмотреть сообщение
а как сделать чтобы прочесть значение из адреса которого ввожу....
Код C++
1
2
3
4
5
int *p=new int;
*p=&00035518;//здесь цифра 22222
cout<<p;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 19:26     объясните код #22
C++
1
2
3
int *p=new int;
*p=2222;
cout<<*p;
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
13.02.2010, 19:28  [ТС]     объясните код #23
PointsEqual,
Цитата Сообщение от МедведЪ Посмотреть сообщение
а как сделать чтобы прочесть значение из адреса которого ввожу....
Добавлено через 18 секунд
PointsEqual, в твоем случае это разве не значение?
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 19:31     объясните код #24
или вот еще примерчик

C++
1
2
3
4
int b=8;
    int *p=new int;
    *p=b;
    cout<<*p;
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
13.02.2010, 19:32  [ТС]     объясните код #25
PointsEqual, ты о чем...

Добавлено через 27 секунд
не понятно что ли?Говорю я ввожу с клавы адрес а он мне его значение
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 19:37     объясните код #26
C++
1
2
3
4
int b=8;
    int *p=new int;
    p=&b;
    cout<<*p;
в p теперь у тебя лежит адрес переменной b или тот который ты ввел, потом разыменовываеш p (*p) . Вот так и прочитать значенье по адресу
Genius Ignat
1233 / 771 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
13.02.2010, 19:42     объясните код #27
PointsEqual:
Такие ошибки делать не хорошо.
int b=8;
int *p=new int;
p=&b;
cout<<*p;
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
13.02.2010, 19:42  [ТС]     объясните код #28
PointsEqual, в 5ый раз говорю....как сделать так чтобы ввести с клавиатуры адрес и программа выводила мне значение?в твоем коде ничего такого нет,там переменные...мне переменные не нужны
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
13.02.2010, 19:44     объясните код #29
МедведЪ, а я что написал
можеш вот так напиши *p=0x0003422;
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
13.02.2010, 19:46  [ТС]     объясните код #30
PointsEqual, там переменные всякие!как с помощью одного указателя делать такое?

Добавлено через 10 секунд
Genius Ignat, ты не знаешь как?
zim22
depict1
 Аватар для zim22
276 / 141 / 2
Регистрация: 11.07.2009
Сообщений: 606
13.02.2010, 19:51     объясните код #31
Цитата Сообщение от МедведЪ Посмотреть сообщение
в 5ый раз говорю....как сделать так чтобы ввести с клавиатуры адрес и программа выводила мне значение?
C++
1
2
3
4
int address;
std::cin >> address;
char *p = reinterpret_cast<char*>(address);
std::cout << *p;
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
14.02.2010, 08:05     объясните код #32
Цитата Сообщение от zim22 Посмотреть сообщение
int address;
std::cin >> address;
char *p = reinterpret_cast<char*>(address);
std::cout << *p;
ужос
Цитата Сообщение от МедведЪ Посмотреть сообщение
в 5ый раз говорю....как сделать так чтобы ввести с клавиатуры адрес и программа выводила мне значение?в твоем коде ничего такого нет,там переменные...мне переменные не нужны
Придется тебя огорчить, не каждый адресс введенный с клавиатуры может быть отображен программой. Все будет зависить от того, содержится ли по данному адресу какие-либо данные и разрешено ли твоей программе читать данные из этой области памяти. Если эти условия не будут соблюдены, то скорее всего ты увидишь окошко с сообщением: "Программа выполнила недопустимую ошибку и будет закрыта".
zim22
depict1
 Аватар для zim22
276 / 141 / 2
Регистрация: 11.07.2009
Сообщений: 606
14.02.2010, 11:08     объясните код #33
Цитата Сообщение от kazak Посмотреть сообщение
ужос
что хотел МедведЪ, то и получил
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
14.02.2010, 11:14     объясните код #34
ДА!))))
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
14.02.2010, 19:27  [ТС]     объясните код #35
Цитата Сообщение от kazak Посмотреть сообщение
Придется тебя огорчить, не каждый адресс введенный с клавиатуры может быть отображен программой. Все будет зависить от того, содержится ли по данному адресу какие-либо данные и разрешено ли твоей программе читать данные из этой области памяти. Если эти условия не будут соблюдены, то скорее всего ты увидишь окошко с сообщением: "Программа выполнила недопустимую ошибку и будет закрыта".
да,я знаю...поэтому когда у меня будет это я запущю свою программку которая не очищяет память...потом открой код который так хочется получить,и посмотрю,содержается ли по этому адрессу цифра 222222,которая пишет в памяти моя прога

Добавлено через 7 часов 7 минут
zim22,
Unhandled exception at 0x00401014 in proba.exe: 0xC0000005: Access violation reading location 0x0000000d.
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
14.02.2010, 19:31     объясните код #36
адреса покоя не дают
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
14.02.2010, 19:31  [ТС]     объясните код #37
PointsEqual, а почему она именно обращается к этим адресам
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
14.02.2010, 19:38     объясните код #38
а какой код ты запустил что выскочила такая ошибка?
^Tecktonik_KiLLeR
 Аватар для ^Tecktonik_KiLLeR
1144 / 426 / 19
Регистрация: 23.06.2009
Сообщений: 6,141
Завершенные тесты: 1
14.02.2010, 19:39  [ТС]     объясните код #39
PointsEqual,
C++
1
2
3
4
int address;
std::cin >> address;
char *p = reinterpret_cast<char*>(address);
std::cout << *p;
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.02.2010, 19:44     объясните код
Еще ссылки по теме:

C++ Объясните код
Объясните код C++

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

Или воспользуйтесь поиском по форуму:
PointsEqual
ниначмуроФ
 Аватар для PointsEqual
832 / 516 / 33
Регистрация: 12.10.2009
Сообщений: 1,915
14.02.2010, 19:44     объясните код #40
это все из за функции reinterpret_cast, непонимаю зачем она тут нужна
Yandex
Объявления
14.02.2010, 19:44     объясните код
Ответ Создать тему
Опции темы

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