Zdravím, potřeboval bych poradit s funkcí, která má parameter 32-prvkové pole typu unsigned char a návratovou hodnotu typu unsigned int. Funkce uloží nejvyšší (7.) bit prvků pole do jednotlivých bitů výsledku funkce.
už jsem něco zkoušel ale asi je něco špatně...
[code]
unsigned int moje (unsigned char pole[32])
{
Int i=0, maska 0x8000 0000;
Unsigned int cislo=0;
For (i=0; i<4; i++)
{
cislo=( pole [i] &maska) ? 0:1;
Maska=maska>>1;
}
}
Volani: moje(*pole);
[/code]
nebo takhle
[code]
unsigned char polec[32];
int ii;
unsigned int hodnota;
for(ii = 0;ii < 32;ii++)
{
polec[ii] = 0x80;
}
polec[5] = 0x00;
polec[10] = 0x00;
hodnota = bity(polec);
printf("\n%x\n",hodnota);
[/code]