Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с указателями

12K
18 января 2006 года
Codman
15 / / 12.11.2005
Здравствуйте! Доброго времени суток!!
Проблемка такая:
я выделяю с помощью функций GlobalAlloc и GlobalLock кусок памяти. последняя функция мне возвращает указатель на первый байт памяти на void*
 
Код:
...
DWORD  MEMSIZE = 65536;
HANDLE hMemory;
void* pMemory;
...
hMemory = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT,MEMSIZE);
pMemory = GlobalLock(hMemory);

Подскажите как мне работать с этой памятью. т.е.:записывать значения, причем в произвольную ее область, считывать значения из определенной области. Например считать 23-й байт или записать его?
Спасибо!!!
259
18 января 2006 года
AlexandrVSmirno
1.4K / / 03.12.2004
Цитата:
Originally posted by Codman
Здравствуйте! Доброго времени суток!!
Проблемка такая:
я выделяю с помощью функций GlobalAlloc и GlobalLock кусок памяти. последняя функция мне возвращает указатель на первый байт памяти на void*
 
Код:
...
DWORD  MEMSIZE = 65536;
HANDLE hMemory;
void* pMemory;
...
hMemory = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT,MEMSIZE);
pMemory = GlobalLock(hMemory);

Подскажите как мне работать с этой памятью. т.е.:записывать значения, причем в произвольную ее область, считывать значения из определенной области. Например считать 23-й байт или записать его?
Спасибо!!!



Можно так:

 
Код:
...
DWORD  MEMSIZE = 65536;
HANDLE hMemory;
BYTE* pMemory;
BYTE val23;
...
hMemory = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT,MEMSIZE);
pMemory = (BYTE*)GlobalLock(hMemory);
val23 = pMemory[22];

Или так:
 
Код:
...
DWORD  MEMSIZE = 65536;
HANDLE hMemory;
void* pMemory;
BYTE val23;
...
hMemory = GlobalAlloc(GMEM_MOVEABLE | GMEM_ZEROINIT,MEMSIZE);
pMemory = GlobalLock(hMemory);
val23 = *(pMemory+23); //если конечно не ошибаюсь в синтаксисе.
16K
18 января 2006 года
shmonoff
1 / / 18.01.2006
здрась. у меня нет проблем с указателями, тк я абсолютный в этом лох. пишу вот по какому поводу. надеюсь на твоё человеколюбие, сострадание и тп. сдуру купил книжку про с++, показалось интересно. а где взять среду программирования (она же пятница) пока не понял. прошу по возможности объяснить суть данного вопроса.
шмонофф.
12K
18 января 2006 года
Codman
15 / / 12.11.2005
Цитата:
Originally posted by shmonoff
здрась. у меня нет проблем с указателями, тк я абсолютный в этом лох. пишу вот по какому поводу. надеюсь на твоё человеколюбие, сострадание и тп. сдуру купил книжку про с++, показалось интересно. а где взять среду программирования (она же пятница) пока не понял. прошу по возможности объяснить суть данного вопроса.
шмонофф.


Среду можешь скачать по адресу: http://www.bloodshed.net/
а по указателям: задавай вопросы отвечу.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог