Tous les compilateurs que je connais implémentent pliage constant c'est-à-dire qu'il calcule les expressions constantes au moment de la compilation, il n'y a donc aucune différence. Cependant, la norme ne l'impose pas :
Une expression constante peut être évaluée pendant la traduction plutôt qu'au moment de l'exécution, et peut donc être utilisée à tout endroit où une constante peut l'être.
Vous pouvez désactiver explicitement cette optimisation avec certains compilateurs. Par exemple, -frounding-math
désactive le pliage des constantes pour les expressions en virgule flottante dans gcc.