The size of a pointer type depends on what kind of pointer it designates (constant data, non-constant data, or function) and on the memory model.
The following table shows an overview:
| Type | Example | Memory Model | ||
|---|---|---|---|---|
| SMALL | MEDIUM | LARGE | ||
| pointer to non-constant data | int * | 14 | 18 | 24 |
| pointer to constant data | const int * | 24 | 24 | 24 |
| pointer to function | void (*) (int) | 24 | 24 | 24 |