Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 07.08.2009, 03:52   #1
Black-Sparkle
 
Регистрация: 05.08.2009
Сообщений: 9
По умолчанию Адрес переменной: Вопрос

Доброго времени суток.

Не могу вспомнить, думаю вы сможете помочь.

Например у меня есть некий адрес памяти. 0x400375f3

И хочу узнать, что в нем записано.
... вывести значение переменной.


За ранее спасибо)
Black-Sparkle вне форума
Старый 07.08.2009, 08:00   #2
oleg kutkov
Unix C++ developer
Форумчанин
 
Аватар для oleg kutkov
 
Регистрация: 16.04.2007
Сообщений: 651
По умолчанию

Что бы получить значение переменной, зная ее адрес - нужно применить операцию разыменования указателя:
пусть есть некий указатель *p, вывод содержимого ячейки памяти, на которую он указывает:
Код:
cout << *p << endl;
Т.е. нужно просто точно так же записать имя указетеля со звездочкой. Если написать без звездочки
Код:
cout << p << endl;
Будет выведен сам адрес
oleg kutkov вне форума
Старый 07.08.2009, 08:41   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
И хочу узнать, что в нем записано.
Стоп. А тип данных по этому адресу известен? Байт это плавающая точка ли...
I'm learning to live...
Stilet вне форума
Старый 07.08.2009, 11:57   #4
alexcoder
Форумчанин
 
Регистрация: 31.05.2009
Сообщений: 786
По умолчанию

Нельзя просто так прочитать информацию из произвольного адреса. Если страницы, к которой обращается программа в данный момент нет в памяти, программа вылетит с и сключением. Нужно сначала убедиться присутствует ли страница в памяти, например функцией IsBadReadPtr.
Помощь с программами:
vk.com/alexcoder1
e-mail: informatik101@mail.ru
alexcoder вне форума
Старый 07.08.2009, 12:25   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
alexcoder
А вдруг он для DOS пишет? Там запретов таких нет.
I'm learning to live...
Stilet вне форума
Старый 07.08.2009, 12:49   #6
Somebody
Участник клуба
 
Регистрация: 08.10.2007
Сообщений: 1,185
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А вдруг он для DOS пишет? Там запретов таких нет.
0x400375f3 не похож (хотя похож, цифры такие же)) на адрес в real mode.
Somebody вне форума
Старый 07.08.2009, 14:03   #7
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

мда... ReadProcessMemory разумеется если под Windows.
BOBAH13 вне форума
Старый 07.08.2009, 22:33   #8
Black-Sparkle
 
Регистрация: 05.08.2009
Сообщений: 9
По умолчанию

Спасибо за советы.

Но дело в том, что я ничего не пишу, просто Виндовс сам переодически выдает ошибку, что информация в "Адресе" не может быть "read".
Вот хочу проверить, и сам прочитать, чо там такое, знаю только адрес.
Black-Sparkle вне форума
Старый 07.08.2009, 22:36   #9
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Black-Sparkle Посмотреть сообщение
Спасибо за советы.

Но дело в том, что я ничего не пишу, просто Виндовс сам переодически выдает ошибку, что информация в "Адресе" не может быть "read".
Вот хочу проверить, и сам прочитать, чо там такое, знаю только адрес.
С этого надо было начинать )
Это ошибка в программе, так называемый AV(Access Violation(Отказ в доступе)), такое бывает, когда программа пытается получить доступ к несвоей памяти. Ничего интересного по этому адресу Вы не найдёте
netrino вне форума
Старый 07.08.2009, 23:25   #10
Black-Sparkle
 
Регистрация: 05.08.2009
Сообщений: 9
По умолчанию

Цитата:
Сообщение от netrino Посмотреть сообщение
С этого надо было начинать )
Это ошибка в программе, так называемый AV(Access Violation(Отказ в доступе)), такое бывает, когда программа пытается получить доступ к несвоей памяти. Ничего интересного по этому адресу Вы не найдёте
Благодарю...

Тему можно закрывать-)
Black-Sparkle вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос о типе переменной s1d0r Общие вопросы Delphi 4 17.06.2009 17:27
Вопрос по логической переменной fl:boolen(паскаль) aslanbek999 Помощь студентам 5 12.06.2009 15:14
Снова про адрес переменной Pedro Общие вопросы Delphi 2 17.12.2008 21:53
Адрес переменной Pedro Общие вопросы Delphi 11 16.12.2008 13:03
как узнать ip адрес зная mac адрес Roman Работа с сетью в Delphi 9 25.06.2007 12:39