<p>On an embedded target I use far pointers to access some parts of the memory map. </p>

<p>near pointer (without explicitely specifying __near):</p>

<pre>unsigned int *VariableOnePtr;</pre>

<p>Pointer to near pointer: <pre>unsigned int **VariableOnePtrPtr;</pre></p>

<p>far pointer: <pre>unsigned int *__far VariableTwoPtr;</pre> </p>

<p>What is the correct way to declare a pointer to a far pointer? Does this pointer have to be a far pointer itself?</p>

I believe you would do this:
```
```
unsigned int * __far *VariableThreePtrPtr;
```
```
A far pointer to a far pointer would be:
```
```
unsigned int * __far * __far VariableFourPtrPtr;
```
```