Zitat Zitat von Siro
Ich habe mal folgendes ausprobiert und bekomme stets das gleiche Ergebnis. bzw. zeigt mein "void pointer n" nach jeder Zeile immer auf die gleiche Adresse.

unsigned char TestData[]={0x00,0x01,0x02,0x03};
void *n;

n = TestData;
n = &TestData;
n = (unsigned char*) TestData;
n = (unsigned int*) TestData;
n = (signed int*) TestData;
n = (int*) TestData;
Also diese Zeilen müssen alle das selbe Ergebnis liefern, mit einer Ausnahme:

n = &TestData

Bei dieser Zeile wird n die Adresse von TestData zugewiesen, bei allen anderen der Wert. Bei Typecasts muss man bedenken, daß sie dem Compiler nur vorgaukeln eine Variable hätte einen anderen Typ als es tatsächlich der Fall ist.

Während also die Zeile mit dem & Operator tatsächlich die Adresse von TestData liefert, sagen alle anderen Zeilen nur "behandle TestData so als wäre es ein int*/unsigned char* etc. etc."