checksum
Blaz Antonic
blaz.antonic at havn.com
Sat Jun 29 16:03:54 CEST 2002
Hello,
Recimo da imam eno strukturo
struct abc = {
unsigned long var1;
unsigned short var2;
unsigned char var3[8];
} * var_abc;
ki okupira 4 + 2 + 8 bajtov. Ce gledam nanjo drugace je na mestu, kamor
kaze var_abc 7 zaporednih 16-bitnih (short) vrednosti. Recimo, da bi jih
rad sestel skupaj (v checksum). Kako se tega lotim ?
int i;
unsigned short sum;
for (i = 0; i < 7; i++)
sum += (unsigned short) var_abc[i];
ni pravi nacin, gcc se pritozuje in izpljune error. Alternatiuve, ki sem
jih probal (in ne delajo) so
sum += (unsigned short *) var_abc[i];
sum += (unsigned short *) var_abc + i;
sum += (unsigned short) var_abc + i;
Vsaj zdi se mi, da sem te kombinacije probal, gcc pa napise nekaj
drugega (ampak se zmeraj ne dela).
Probal sem tudi tako, da bi
unsigned short * var_def[7];
kazal na isto mesto kot var_abc, potem pa bi sesteval skupaj var_def[i].
Afaik tudi to ne dela.
Blaz Antonic
More information about the lugos-prog
mailing list