Go Down

Topic: Aide problème de type (Read 148 times) previous topic - next topic

Lestig

Bonjour,
Lors de la compilation j'ai un problème de type mais n'arrive pas à le résoudre.
Pouvez vous m'aider ?

l'erreur est le suivante :
invalid operands of types 'double' and 'int' to binary 'operator&'

et le code :
Code: [Select]

    float calc;
    int oct3;
    oct3 = floor(floor(calc / 256)/256) & 0x7F;
    oct3 = oct3 | 0x80;

kamill

Bonjour,

Comme le message l'indique tu ne peux faire d'opération binaire avec les float. Tu dois les convertir en entiers.
 
Code: [Select]
 oct3 = (int)floor(floor(calc / 256)/256) & 0x7F;

Lestig

OK merci, j'étais partie du principe que le floor me rendait des entiers mais avais oublié de changer ma déclaration de calc !

kamill

floor retourne un flottant même si calc est un entier.
Bon, c'est vrai que ça ne présente pas beaucoup d'intérêt de faire floor d'un entier.

Go Up