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

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

Войти
Регистрация
Восстановить пароль
 
PlayaRC
5 / 5 / 0
Регистрация: 10.03.2012
Сообщений: 121
#1

Арифметика указателей (указатель на void*) - C++

05.06.2014, 16:22. Просмотров 633. Ответов 3
Метки нет (Все метки)

У меня есть указатель на void*, который я получил с помощью
C++
1
void *beginPointer = VirtualAlloc(NULL, size, MEM_COMMIT, PAGE_READWRITE);
Мне нужно получить указатель на участок памяти, который находится через 512 байт после beginPointer.
Если бы beginPointer был бы int*, то я бы просто прибавил 512 и получил бы что нужно, а вот с void* такое не работает.
Что делать, подскажите?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.06.2014, 16:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Арифметика указателей (указатель на void*) (C++):

Функция принимает указатель на void и возвращает указатель на int - C++
Запишите прототип функции, которая принимает указатель на void и возвращает указатель на int.

Как обойтись без указателей и указателей на указатель? - C++
Ибо не совсем выходит понять,что на что тут указывает #include "stdafx.h" #include <iostream> #include <stdlib.h> using namespace...

Преимущества указателей на void - C++
В чем преимущества указателей на void? Только в том, что не нужно лишний раз писать (type*) при преобразовании? Например вместо ...

массив указателей на void* - C++
Здравствуйте. Сейчас пытаюсь решить задачу из книги Брюса Эккеля "Философия С++", I том. В одном из упражнений требуется передать в...

Арифметика указателей - C++
есть size_t * pointer_1; logfile_f("\npointer_1 is 0x%X", pointer_1); есть size_t * pointer_2 = pointer_1 - 284; ...

арифметика указателей - C++
Здравствуйте. Объясните, пожалуйста, код из инета: 1. "переменная A типа int приводится к типу unsigned" приводится к бесзнаковому...

3
castaway
Эксперт С++
4884 / 3019 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
05.06.2014, 16:34 #2
Если бы он был бы int *, то надо было бы прибавлять 64, а не 256.
А так:
... = (char *)VirtualAlloc( ...
0
PlayaRC
5 / 5 / 0
Регистрация: 10.03.2012
Сообщений: 121
05.06.2014, 16:50  [ТС] #3
Если бы он был бы int *, то надо было бы прибавлять 64, а не 256.
А так:
... = (char *)VirtualAlloc( ...
это понятно! вопрос в том, что можно ли проводить арифметические операции над указателями на void* и как?
0
uglyPinokkio
326 / 229 / 41
Регистрация: 30.05.2014
Сообщений: 682
05.06.2014, 16:56 #4
Цитата Сообщение от PlayaRC Посмотреть сообщение
вопрос в том, что можно ли проводить арифметические операции над указателями на void* и как?
Можно или нет - зависит от конкретного применения.
Как - приводится к указателю на требуемый тип и выполняется действие.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.06.2014, 16:56
Привет! Вот еще темы с ответами:

Указатель на void - C++
Как можно сделать универсальную функцию, которая принимает указатель на неопределенный тип, увеличивает значение на которое указывает этот...

Индексация массивов, арифметика указателей - C++
инициализирую одномерный массив и делаю на него указатель const int N = 6; int X = {9,3,2,3,6,8}; int *mas = X; ...

Способы создания объектов и арифметика указателей - C++
Вот сам код: class ListNode { public: ListNode(int val) { next=NULL; i=val; } ListNode*...

Указатель типа void c++ - C++
Haпример указатель типа void*ptr char *p void *ptr="abs"; p=((char *)ptr);Так указатель неопределённого типа, присваивается к...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
05.06.2014, 16:56
Ответ Создать тему
Опции темы

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