Ciao ragazzi,in seguito ad un elevamento a potenza mi viene fuori un "risultato indesiderato".
Premetto che l'elevamento a potenza provoca un numero abbastanza elevato (2 alla 1000)

Ecco il mio codice:
codice:
#include <iostream>
#include <math.h>
using namespace std;

int main()
{
    char numero[100];
     float risultato;
    risultato = pow(2,2000.0);
    
    cout << risultato;

    return 0;
}
Sia eseguendo il debug che stampando a video il risultato mi esce la scritta "inf" ..può essere che il risultato sia troppo elevato per essere contenuto in un float?
P.s. Ho anche provato a dichiarare il risultato come double o long double,ma il risultato è analogo.

Potreste spiegarmi il motivo di questo fatto (e anche come risolvere? )

Grazie.