Указатель на структуры в C - PullRequest
1 голос
/ 18 февраля 2012
typedef struct stack{
 int size;
 int array[30];
}STACK;

int p;
STACK *W;

В чем разница между (*W).array и (*W).array[0]?
Как получить int-указатель на первый элемент в массиве, если у меня есть W и p?

Ответы [ 2 ]

6 голосов
/ 18 февраля 2012

В чем разница между (* W) .array и (* W) .array [0]

W->array - это массив, а W->array[0] - это элемент.

Как получить int-указатель на первый элемент в массиве, если у меня есть W и p?

Не знаю, что вы хотите сделать с p но W->array уже распадается на указатель на первый элемент .Однако, если вы хотите, скажем, пятый элемент:

int *p = &W->array[4];
0 голосов
/ 18 февраля 2012

Либо (W->array), либо &(W->array[0])

Существует нет разницы в адресе массива и адресе первого элемента массива

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