si par exemple on fait
int a=3.7;
eske a est egale a 3 ou a 4??
cad eske le c arrondit au plus proche ou pas
et si oui esk'il arrondit par defaut ou par exces dans le cas de 0.5...
Kevin Kofler
: Dans une variable globale, tu as en effet un "error: initializer element is not computable at load time".
Pollux
:Kevin KoflerJe ne suis pas sûr...
: Dans une variable globale, tu as en effet un "error: initializer element is not computable at load time".
Ou alors le standard spécifie que le compilo doit pouvoir simplifier les entiers (int tableau[16-1]) mais pas les flottants?
Et oui, ça peut te donner 3 ou 4, selon le compilo que t'utilises (mais je pense que globalement un certainement nb d'implémentations vont donner 3 -- et je ne sais pas ce qu'il en est pour -3.2).
Kevin Kofler
:Pollux
:Kevin KoflerJe ne suis pas sûr...
: Dans une variable globale, tu as en effet un "error: initializer element is not computable at load time".
Moi si, j'ai compilé un programme de test avec TIGCC pour voir.
~ $ echo 'int x=3.7;' > $$.c && gcc -S $$.c && cat $$.s && rm -f $$.* .file "3284.c" .globl _x .data .align 4 _x: .long 3
unknown@K ~ $ cat <<EOF >floats.c > int i=3.7; > EOF unknown@K ~ $ gcc -S floats.c unknown@K ~ $ cat floats.c int i=3.7; unknown@K ~ $ cat floats.s .file "floats.c" .globl _i .data .align 4 _i: .long 3 unknown@K ~ $ gcc --version gcc.exe (GCC) 3.2 (mingw special 20020817-1) Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.