Citation:
On success, pow and powl return the value calculated of x to the power of y.
Sometimes the arguments passed to these functions produce results that overflow or are incalculable. When the correct value would overflow, the functions return the value HUGE_VAL (pow) or _LHUGE_VAL (powl). Results of excessively large magnitude can cause the global variable errno to be set to
ERANGE Result out of range
If the argument x passed to pow or powl is real and less than 0, and y is not a whole number, or if x is 0 and y is less than 0, or you call pow(0,0), the global variable errno is set to
EDOM Domain error
Error handling for these functions can be modified through the functions _matherr and _matherrl.
Il faut que x (dans x^y) soit strictement supérieur à 0. Je suppose donc que tu dois avoir une erreur de domaine. Ce n'est pas propre, mais si tu veux parer cette erreur, tu dois tester avant si x=y=0 et parer donner directement le résultat que tu connais.