что это в C ++? - PullRequest
       33

что это в C ++?

0 голосов
/ 18 февраля 2011
int* i;

int * i;

int **i;

я знаю

int *i;
представляет переменную указателя

Ответы [ 6 ]

5 голосов
/ 18 февраля 2011

Интервал не имеет значения, поэтому первые два идентичны.

int** i;

Указатель на указатель на int.

Например, если iсодержит значение указателя, тогда это будет означать, что в памяти, начиная с этого адреса, был другой указатель, на этот раз непосредственно на int, и если вы перейдете по этому адресу , то вы найдетеint числовое значение.

int an_int = 3;
int* p = &an_int;
int** pp = &p;

Это формирует цепочку ...

int** pp = &p ------> int* p = &an_int ------> int an_int = 3
2 голосов
/ 18 февраля 2011

Первые два абсолютно одинаковы.

int ** Я имею в виду, я могу держать адрес указателя. То есть указатель на указатель.

1 голос
/ 18 февраля 2011

Все они одинаковы и являются указателем на целое число:

int* i;
int * i;
int *i;

Это указатель на указатель на целое число:

int **i;
1 голос
/ 18 февраля 2011

Пробелы в этом случае незначительны.int * i означает то же самое, что и int* i и int *i.Все указатели на целое число.int ** i отличается, это указатель на указатель на целое число.

0 голосов
/ 25 января 2013

int *i;, int* i; или int * i;

Все они идентичны, потому что пробелы не имеют никакого значения. Используется для хранения адреса целого числа. Обычно используется в динамическом одномерном целочисленном массиве.

Аналогично,

int **i;, int** i; или int ** i;

Все они идентичны, потому что пробелы не имеют никакого значения. Он используется для хранения адреса указателя на целое число. Обычно используется в динамическом двумерном целочисленном массиве.

0 голосов
/ 18 февраля 2011

int * i;

указатель на int. потенциально используется как 1d массив

int * i;

также указатель на int

int ** i;

указатель на указатель на int. потенциально используется как двумерный массив

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...