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

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

Войти
Регистрация
Восстановить пароль
 
Игорь с++
433 / 456 / 16
Регистрация: 26.01.2011
Сообщений: 2,032
#1

по адресу получить значение - C++

10.04.2013, 13:07. Просмотров 1001. Ответов 6
Метки нет (Все метки)

Господа создаю программу которая задаёт значение и показывает адрес ячейке , запускаю её и в другой программе в исходник пишу этот адрес , но значение показывает совсем другое.

программа которая задаёт значение -
C++
1
2
3
4
5
6
int a = 5;
int *b = &a; // Г*äðåñ
int c = *b; // Гў c Г§Г*Г*Г·ГҐГ*ГЁГҐ a
    
    cout<<"adress = "<<b<<"\n";
    cout<<"znachenie = "<<c<<"\n";
которая читает -
C++
1
2
3
4
5
6
7
int *g;
    
    g=(int*)0x28ff44;
    
int r=*g;
 
cout<<r<<"\n";
в чём ошибка , или где подводные камни ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2013, 13:07     по адресу получить значение
Посмотрите здесь:

Указатель: Получить значение по адресу, указываемому указателем - C++
Написать программу, в которой выполнить следующие действия: a) Описать указатели на все известные типы данных; b) Выполнить для каждого...

Значение, хранящееся по адресу - C++
Как узнать адрес, по которому находится значение переменной, я уже знаю. это с помощью = &amp;var А как узнать значение по адресу...

Парадокс: значение переменной равно её адресу - C++
Друзья! Вот код, в нём всё понятно. Выводятся одинаковые значения. Но ведь этого не может быть! Хотя бы потому не может, что по адресу,...

Разработать программу позволяющую получить дамп памяти по адресу содержащему вводимые числа - C++
Разработать программу позволяющую получить дамп памяти по адресу содержащему вводимые числа. Программа должна предусматривать вывод...

Поменять значение по указанному адресу в переменной типа std::string - C++
Здравствуйте форумчане. Не получается никак правильно использовать средства С++. Задача такова: Например есть две строки типа...

Почему при выводе указателя получаем для char - значение по адресу, а для других типов - адрес - C++
Есть следующий код. Результат работы этой программы представлен на рисунке. Почему при выводе указателя для char возвращается значение, а...

Получить значение перечисления - C++
День добрый, форумчане. Имею такое перечисление: public enum OrdStatuses { New = '0', PartiallyFilled = '1',...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
10.04.2013, 13:15     по адресу получить значение #2
Как инициализировать указатель произвольным адресом?
Игорь с++
433 / 456 / 16
Регистрация: 26.01.2011
Сообщений: 2,032
10.04.2013, 13:19  [ТС]     по адресу получить значение #3
alsav22, именно из за этой темы и стало интересно , но я что то не пойму как прочитать из адресса другого процесса . Я где то давно читал , что у разных процессов разделяемая память , и попасть в чужой нельзя , но я думаю как то всё равно можно же.
Croessmah
Модератор
Эксперт CЭксперт С++
12980 / 7292 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
10.04.2013, 13:22     по адресу получить значение #4
Цитата Сообщение от Игорь с++ Посмотреть сообщение
о я думаю как то всё равно можно же.
API системы
Игорь с++
433 / 456 / 16
Регистрация: 26.01.2011
Сообщений: 2,032
10.04.2013, 13:26  [ТС]     по адресу получить значение #5
Croessmah, средствами одного языка я так понимаю это не преодолеть ?
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,076
Записей в блоге: 10
Завершенные тесты: 1
10.04.2013, 13:42     по адресу получить значение #6
Попасть из адресного пространства одной программы в адресное пространство другой программы просто используя указатели нельзя.
Адресное пространство каждого процесса является защищенным.
Для взаимодействия нескольких программ между собой существуют специальные средства ( http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx )
Для чтения памяти другого процесса можно воспользоваться функцией ReadProcessMemory().

Добавлено через 33 секунды
* Все это относится к WinAPI.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2013, 13:52     по адресу получить значение
Еще ссылки по теме:

Как получить значение из функции? - C++
Приветствую всех! Требуется совет эксперта С++. Как правильнее передать в функцию значение какой-либо переменной, при условии, что функция...

Как получить значение определенного пикселя. - C++
Здравствуйте. Кто нибудь знает как получить цвет(RGB код) определенного пикселя в битмапе. Знаю что в MFC есть CBitmap, но как это...

Получить наибольшее значение удовлетворяющее условию - C++
Добрый вечер обитатели форума,помогите решить задачки с помощью циклов) №2 Дано целое число m&gt;1 . Получить наибольшее целое k , при...

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

Получить значение часа из переменной int - C++
Здравствуйте. Столкнулся с такой проблемой, пишу dll, в ней функция которая принимает дату, дата в формате int (в виде количества...


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

Или воспользуйтесь поиском по форуму:
Kastaneda
Форумчанин
Эксперт С++
4479 / 2841 / 227
Регистрация: 12.12.2009
Сообщений: 7,224
Записей в блоге: 1
Завершенные тесты: 1
10.04.2013, 13:52     по адресу получить значение #7
Адресные пространства двух процессов не пересекаются, хотя могут иметь даже одинаковые виртуальные адреса.
Почитай про устройство памяти в protected (ну и long) mode, в т.ч. про страничную адресацию. Адреса делятся на физические, линейные и логические (виртуальные). Те адреса, которые мы видим работая с С++ кодом - это виртуальные адреса (в общем случае, системные программисты могу "видеть" другие адреса), которые имеют смысл только внутри процесса.
Yandex
Объявления
10.04.2013, 13:52     по адресу получить значение
Ответ Создать тему
Опции темы

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