On Fri, Mar 02, 2012 at 09:41:12PM +0100, Marc Mongenet wrote:
> Pour 0xC044000000000000,
> que donne quelque-chose comme
> printf("%llx %llx\n", msgp->payload.vol.volume,
> be64toh(msgp->payload.vol.volume) ?avec %lx cela affichait 0, je suis en x86_64 il ne me semble pas que le second l change quoique ce soit dans ce cas. les macros be64toh et compagnie acceptent un uint64_t en entrée, donc il y a le cast automatique floats <-> ints qui entre en action pas pour le meilleur dans ce cas. marrant, ocaml n'a pas de type champs de bits natif propre au langage, mais C non plus, C ne fait pas mieux dans ce cas. et c'est même l'inverse, avec camlp4, une librairie "ocaml-bitstring" existe permettant de bidouiller les bits de manière plutôt élégante. -- Philippe Strauss http://www.strauss-acoustics.ch _______________________________________________ gull mailing list [email protected] http://forum.linux-gull.ch/mailman/listinfo/gull
