Что означает "typedef char A [max_size]"? - PullRequest
1 голос
/ 07 апреля 2019

У меня есть эта часть кода, и я не понимаю, как работает первый typedef и что происходит, когда мы используем его в структуре.

#define MAX_BLOCKEDADDRESS_SIZE 256

typedef char BlockedAddress[MAX_BLOCKEDADDRESS_SIZE];

typedef struct Blocked {
int capacity;
int length;
BlockedAddress *mailAddress;
} Blocked;

1 Ответ

1 голос
/ 07 апреля 2019

BlockedAddress - это пользовательский тип, представляющий собой массив 256 char.

#define MAX_BLOCKEDADDRESS_SIZE 256
typedef char BlockedAddress[MAX_BLOCKEDADDRESS_SIZE];

Blocked - это пользовательский тип, struct, содержащий 2 int и один указатель.

typedef struct Blocked {
  int capacity;
  int length;
  BlockedAddress *mailAddress;
} Blocked;

Элемент mailAddress является указателем на BlockedAddress.
mailAddress в качестве указателя на массив 256 символов

...