Zitat Zitat von _R2D2
In diesem Beispiel ist TestData jedoch ein Array und das & macht rein garnichts.
Das stimmt nicht. In allen Beispielen wird die Adresse von TestData zugewiesen, aber in diesem Fall, die Adresse von der Adresse, also entsteht ein Doppelzeiger vom Typ unsigned char**.
Worauf soll &TestData denn zeigen??

Es gibt keine Adresse von Adresse von TestData, da die Adresse von TestData ein rvalue ist und deshalb nicht weiter referenziert werden kann. Der Adress-Operator & macht bei Arrays nichts. Wäre TestArray ein unsigned char* dann würde der Typ von &TestData tatsächlich unsigned char** sein und &TestData würde auf die Adresse von diesem Zeiger ergeben.

MfG Mark