L'obtention d'avertissement de C bibliothèque de mathématiques de la fonction pow
J'ai la fonction suivante dans mon code:
int numberOverflow(int bit_count, int num, int twos) {
int min, max;
if (twos) {
min = (int) -pow(2, bit_count - 1); \\ line 145
max = (int) pow(2, bit_count - 1) - 1;
} else {
min = 0;
max = (int) pow(2, bit_count) - 1; \\ line 149
}
if (num > max && num < min) {
printf("The number %d is too large for it's destination (%d-bit)\n", num, bit_count);
return 1;
} else {
return 0;
}
}
Au moment de la compilation, j'obtiens le message d'avertissement suivant:
assemble.c: In function ‘numberOverflow’:
assemble.c:145: warning: incompatible implicit declaration of built-in function ‘pow’
assemble.c:149: warning: incompatible implicit declaration of built-in function ‘pow’
Je suis à une perte pour ce qui est à l'origine de ce... des idées?
OriginalL'auteur blcArmadillo | 2010-09-20
Vous devez vous connecter pour publier un commentaire.
Vous devez inclure
math.h
Et exactement pourquoi avons-nous obtenir cet avertissement?
OriginalL'auteur codaddict
À partir de la formulation de vos mises en garde, il semble que vous utilisez
gcc
? C'est peut-être la peine d'essayer un autre compilateur, à savoir clang. Celui-ci raconte-moi:OriginalL'auteur Jens Gustedt