RosettaCodeData/Task/Exponentiation-operator/C/exponentiation-operator-2.c

14 lines
331 B
C

#define generic_pow(base, exp)\
_Generic((base),\
double: dpow,\
int: ipow)\
(base, exp)
int main()
{
printf("2^6 = %d\n", generic_pow(2,6));
printf("2^-6 = %d\n", generic_pow(2,-6));
printf("2.71^6 = %lf\n", generic_pow(2.71,6));
printf("2.71^-6 = %lf\n", generic_pow(2.71,-6));
}