С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.87/30: Рейтинг темы: голосов - 30, средняя оценка - 4.87
2 / 2 / 0
Регистрация: 11.03.2011
Сообщений: 49
1

Доступ к памяти по адресу

29.07.2013, 13:31. Показов 6143. Ответов 42
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть структура, элементы которой адрес на начало массива в памяти и его размер. Адреса хранятся в 16-ричном формате. Мне нужно распечатать то, что лежит в этом массиве.

C++
1
2
3
4
for (int i = 0; i <= ((int)(current->_size)); i++)
            {
                TraceFile << (current->_address)[i]<<endl;
            }
(current->_address)[i] - некорректно, не могу придумать, как сделать иначе
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.07.2013, 13:31
Ответы с готовыми решениями:

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

Доступ к переменной по абсолютному адресу.
Мне нужно обратится к ячейке памяти с известным конкретным адресом (это может быть вектор...

Данные по адресу памяти
У меня есть адрес например 0x11E9B62C как узнать что по нему записанно?

Прочитать из памяти по адресу
Задача: в памяти по адресу 0040:0010h (0x00400010) записано слово (информация о подключенном...

42
aLarman
29.07.2013, 15:23     Доступ к памяти по адресу
  #41

Не по теме:

Цитата Сообщение от xanderfomin Посмотреть сообщение
Тут уже просто пошла путаница между адресами и указателями.
угу :)

0
2 / 2 / 0
Регистрация: 11.03.2011
Сообщений: 49
30.07.2013, 11:11  [ТС] 42
Да, всем спасибо Вывод в конечном счете выглядит так

C++
1
2
3
4
5
6
7
8
9
for (int i = 0; i <= ((int)(current->_size)); i++)
            {
                std::stringstream ss;
                float fl = *((float*)(current->_address + i) );
                ss<<fl;
                std::string tmp(ss.str());
                TraceFile << tmp <<endl;
 
            }
0
18 / 17 / 0
Регистрация: 29.09.2010
Сообщений: 156
30.07.2013, 11:41 43
Цитата Сообщение от sly4ainaya Посмотреть сообщение
Да, всем спасибо Вывод в конечном счете выглядит так

C++
1
2
3
4
5
6
7
8
9
for (int i = 0; i <= ((int)(current->_size)); i++)
            {
                std::stringstream ss;
                float fl = *((float*)(current->_address + i) );
                ss<<fl;
                std::string tmp(ss.str());
                TraceFile << tmp <<endl;
 
            }
а зачем к указателю приводить что бы потом его разыменовывать?
0
30.07.2013, 11:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.07.2013, 11:41
Помогаю со студенческими работами здесь

Выделение памяти по известному адресу
Всем привет. Вопрос сообственно в заголовке темы. Как выделить память по нужному мне адресу,...

Взятие обьекта по адресу в памяти
Допустим, я знаю что по адресу 0x13242341 находится произвольный обьект. Как возвратить...

Почему обращение к недоступному адресу в памяти
Почему при проверке кода(компиляции) выскакивает сообщение :&quot;Недостаточный размер массивов или...

Вызов функции-члена класса по адресу в памяти
Всем хорошего дня :) Допустим, что где-то есть static функция, не принимающая аргументов и...


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

Или воспользуйтесь поиском по форуму:
43
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru