Salve,
vorrei implementare una funzione hash di tipo folding ( si tratta di sommare alcuni gruppi di bit della chiave argomento della funzione nota:le chiavi sono int)).
Dato che l'unico modo che conosco per considerare i gruppi di bit e fare una struct del tipo
vorrei castare un int come number, sommarne quindi i campi e poi restituirne la somma, peccato che il compilatore non sia d'accordo.codice:typedef struct number{ unsigned p1:3; unsigned p2:4; unsigned p3:3; unsigned p4:6; }number;
Non capisco perchè dato che number è da 16 bit come anche gli unsigned int e gli int.
Qualcuno sa perchè o mi sa suggerire un metodo migliore per farlo?
Grazie dell'aiuto