Hallöchen!
Hat jemand von euch eine Idee, wie man ein Array gezielt über das erste Element hinaus beschreiben kann?
Damit meine ich, dass folgender Code
Code:
unsigned char hallo[8],i,stelle=0,a=0;
for(i=0;i<8;i++)hallo[i]=0;
for(i=0;i<10;i++){
*hallo |= (a<<stelle++);
a=1;
}
printf("hallo= %x%x\n",hallo[1],hallo[0]);
das
3FE (hex) Ergebnis liefert.
Ich habe das ganze vorerst so gelöst:
Code:
unsigned char hallo[8],i,stelle=0,a=0;
for(i=0;i<8;i++)hallo[i]=0;
for(i=0;i<10;i++){
if (stelle<8) hallo[0] |= (a<<stelle++);
else if(stelle<16) hallo[1] |= (a<<(stelle++ -8));
a=1;
}
printf("hallo= %x%x\n",hallo[1],hallo[0]);
Da es in diesem Programm um jede Millisekunde geht (und das ganze sehr oft aufgerufen wird), würde ich mich über eine bessere Lösung freuen
Gruß,
Elko