Fonction round() en C ansi - C - Programmation
Marsh Posté le 18-03-2011 à 19:03:35
Et tu compiles en C99? parce que round n'est pas la fonction originelle de math.h pour arrondir. Les deux fonctions pour arrondir qu'on est sur d'avoir dans math.h c'est ceil et floor.
A+,
Marsh Posté le 18-03-2011 à 19:08:15
floor et ceil, ca doit être dans le C Kernighan et Ritchie antédiluvien, et donc tous les C ultérieurs
Je te disais que round (et rint) sont des fonctions C99, mais pas dans tous les C d'avant.
Notes que gcc a un flag pour c99 ( -std=c99 ) qui devrait t'éviter d'avoir a changer ton code (mais qui disable peut être des features à la C++, comme les commentaires en // ).
A+,
Marsh Posté le 18-03-2011 à 18:38:40
Bonjour,
Pourquoi la fonction round() n'est pas compatible C ansi ?
Si je l'utilise dans mon programme, j'obtiens l'erreur:
[code]
gcc -Wall -g -O3 -pipe -ansi -c -o main.o main.c
main.c: In function ‘main’:
main.c:31:17: attention : implicit declaration of function ‘round’
[/gcc]
j'ai bien l'header math.h inclus dans mon fichier c.
Merci !