Добавление к расположению указателя в C ++ - PullRequest
0 голосов
/ 05 апреля 2011

У меня есть int foo, в котором есть адрес целого числа. Как добавить к целому числу, на которое foo указывает в одной строке?

Решение:

(*(int *)foo)+=1

Вот как я с этим справился.

Ответы [ 3 ]

6 голосов
/ 05 апреля 2011

Чтобы добавить значение, на которое указывает указатель:

int * pointer;
int value;
(*pointer) += value; // parans for clarity, not necessarily needed
0 голосов
/ 05 апреля 2011

Если вы увеличиваете на единицу и хотите написать его кратчайшим путем (указатель ++).Пример:

int i = 0;
int* ip = &i;

cout << i << endl;
++*ip;
cout << i << endl;

Вывод:

0
1
0 голосов
/ 05 апреля 2011
int a = 4;
int* foo = &a;
// and now the one line you asked
*foo = *foo + 2; // a = 6
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...