Hallo
habe seit längerem ein komisches Pointerproblem mit dem avr studio
es gibt einen
array in dem sich 4 bytes einer long value befinden
jetzt möchte ich den long wert wieder sauber in eine variable packen und
bin natürlich zu faul jedes byte einzeln drauf zu shiften wie hier z.b.
1 | long wert;
|
2 |
|
3 | wert=data[3];
|
4 | wert<<=8;
|
5 | wert|=data[2];
|
6 | wert<<=8;
|
7 | wert|=data[1];
|
8 | wert<<=8;
|
9 | wert|=data[0];
|
sondern caste einfach den byte array zu einem long wert:
1 | long wert;
|
2 | wert=*((long*)data);
|
was mir allerdings total zufällige ausgaben bringt?
theoretisch müsste das doch so funktionieren?