Hallo
Ich will ein Int array möglichs schnell per spi übertragen. Daher dachte
ich ich erhöhe einfach den Pointer.
Ganz sicher kann man das auch anders erledigen, aber es geht mal um
Prinzip.
Mein Code zum testen schaut in etwa so aus:
1 | volatile unsigned int test[4]= {0x1122, 0x3344, 0x4455, 0x5566};
|
2 | LSB = *test;
|
3 | MSB = *((&test+1));
|
Die Variablen stehen im Speicher so drin:
Die ausgabe ist nun:
MSB = 22
LSB = 44
der Pointer zählt also um zwei hoch da es ein Int- Array ist.
Richtig wenn man es so will, falsch wenn ich eigentlich auf das MSB
kommen will. Auch *((&test+0b01)) führt nicht dazu dass der Pointer nur
eins vorrückt.
Wie bekomm ich denn die Adresse so raus dass sie nicht als Pointer
verarbeitet wird sondern als normale Zahl?
fg
m.