[C] que fait cette fonction ?
pom
-
pom -
pom -
Bonjour, j'ai repris un code mais je ne comprends pas ce que fait cette foncion :
Que veut dire
Et si maintenant mon PC est sur 64 bits, comment modifier cette fonction ? Simplement en remplacent int32_t par int ?
Merci.
/* assume 32 bit int */ typedef int int32_t; typedef unsigned int u_int32_t; /* assume little endian */ typedef union { double value; struct { u_int32_t lsw; u_int32_t msw; } parts; } ieee_double_shape_type; /* Get the more significant 32 bit int from a double. */ #define GET_HIGH_WORD(i,d) \ do { \ ieee_double_shape_type gh_u; \ gh_u.value = (d); \ (i) = gh_u.parts.msw; \ } while (0)
Que veut dire
gh_u.value = (d); \ (i) = gh_u.parts.msw;
Et si maintenant mon PC est sur 64 bits, comment modifier cette fonction ? Simplement en remplacent int32_t par int ?
Merci.
A voir également:
- [C] que fait cette fonction ?
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Fonction remplacer sur word - Guide
- Fonction somme excel - Guide
1 réponse
blarf,
au hasard, je dirais que la fonction fait :
Si tu ne comprends pas comment elle fonctionne, je te suggère d'aller relire un tutoriel C sur les structures (et les unions).
Bon travail
au hasard, je dirais que la fonction fait :
/* Get the more significant 32 bit int from a double. */
Si tu ne comprends pas comment elle fonctionne, je te suggère d'aller relire un tutoriel C sur les structures (et les unions).
Bon travail
pom
Mon pb n'est pas dans l'utilisation des unions et structure mais dans l'algo.