Обработка int как адреса / указателя - PullRequest
0 голосов
/ 09 мая 2011

У меня есть функция C, которая возвращает int, который представляет базовый адрес некоторого блока в памяти. Если бы я хотел обработать значение этого int как адрес (чтобы я мог обращаться с ним как с массивом или иным образом перемещаться по области памяти, на которую он указывает), какой синтаксис я бы использовал?

1 Ответ

4 голосов
/ 09 мая 2011

Предполагая, что int s и указатели имеют одинаковый размер на вашем компьютере, простой литье должно работать.

Например:

int function_that_returns_address();
...
char * p = (char *) function_that_returns_address();
p[0] = 'H';
p[1] = 'i';
p[2] = 0;
...