Risolvere il riferimento indefinito a Pow in C++
Quando affrontiamo questo messaggio di errore, aggiungiamo semplicemente il file header nel nostro codice in cui è dichiarata la funzione “pow()”. Questo rimuove l'errore dal nostro codice. I file header utilizzati per la funzione “pow()” sono:
- #include file di intestazione
- #include
file di intestazione - #include
file di intestazione
Ecco alcuni codici che mostreranno come si verifica questo errore e come affrontarlo nella programmazione C++.
Esempio 1:
Nel nostro primo esempio, aggiungiamo il file di intestazione '#include
Successivamente, chiamiamo qui la funzione 'int main()' che viene utilizzata per definire l'inizio del nostro codice C++. Ora, in questa funzione, utilizziamo l'istruzione 'cout<<' che aiuta a stampare le informazioni fornite sullo schermo del display. L'istruzione '<< endl' viene utilizzata per spostare il puntatore sulla nuova riga.
Successivamente viene utilizzata la funzione “pow()” in cui dobbiamo passare due parametri: base ed esponente. Qui aggiungiamo “10, 4”, dove “10” è il numero base e “4” è l’esponente. Alla fine di questo codice inseriamo un'altra istruzione che è 'return 0'.
Codice 1:
#includeutilizzando spazio dei nomi standard ;
int principale ( ) {
cout << 'Qui viene utilizzata la funzione Power' ;
cout << fine << fine ;
cout << pow ( 10 , 4 ) ;
ritorno 0 ;
}
Produzione:
Dopo aver completato il codice, dobbiamo compilarlo ed eseguirlo. Quando compiliamo il codice precedente, appare il messaggio di errore che dice 'pow non è stato dichiarato in questo ambito'. Questo errore appare perché non abbiamo aggiunto il file header in cui è dichiarata questa funzione 'pow()'. Per risolvere questo errore, dobbiamo inserire uno qualsiasi dei file header menzionati in precedenza.
Ora dobbiamo risolvere questo errore per ottenere il risultato. Per questo, abbiamo apportato alcune modifiche al codice. Nello stesso codice, aggiungiamo il file di intestazione “#include” dopo il file di intestazione “”. Questo aiuta a rimuovere l'errore del codice precedente perché la funzione “pow()” è dichiarata in questo file di intestazione.
Codice aggiornato 1:
#include#include
utilizzando spazio dei nomi standard ;
int principale ( ) {
cout << 'Qui viene utilizzata la funzione Power' ;
cout << fine << fine ;
cout << pow ( 10 , 4 ) ;
ritorno 0 ;
}
Produzione :
Questo codice aggiornato è ora compilato e viene eseguito correttamente e otteniamo l'output del codice. L'errore del codice precedente è ora rimosso e dopo la compilazione appare il seguente risultato:
Esempio 2:
Qui abbiamo un altro esempio in C++. Dopo aver aggiunto '
Codice 2:
#includeutilizzando spazio dei nomi standard ;
int principale ( )
{
cout << 'Stiamo scoprendo la potenza di un numero qui nella programmazione C++.' << fine << fine ;
int nessuno, esp , risultato ;
nessuno = 25 ;
esp = 2 ;
risultato = pow ( nessuno, esp ) ;
cout << 'La potenza del numero è =' << risultato ;
cout << fine ;
ritorno 0 ;
}
Produzione :
Ora, questo nuovo codice mostra lo stesso messaggio di errore dell'esempio precedente. Il motivo è che è lo stesso anche perché non abbiamo inserito il file header con cui possiamo ottenere questa funzione “pow()”.
Ora aggiungiamo il file di intestazione al nostro codice che è il file di intestazione 'cmath'. Questo file di intestazione viene utilizzato nella programmazione C++ per ottenere la funzione 'pow()' del nostro codice. Dopo aver aggiunto il file di intestazione '#include', otteniamo l'output richiesto del nostro codice.
Esempio 3:
Ora abbiamo un altro esempio. Qui, dopo la funzione “main()”, dichiariamo e inizializziamo il “base_num” del tipo di dati “long double” con “4.5”. Quindi, dichiariamo e inizializziamo anche 'expo_num' del tipo di dati 'intero' con '-2'. Dichiariamo anche un'altra variabile dal nome 'risultato_1' che è di tipo dati 'long double'.
Ora utilizziamo la funzione “pow()” per inizializzare la variabile “result_1” e passare “base_num” e “expo_num” a questa funzione. Successivamente, stampiamo il risultato utilizzando il comando “cout”. Ora dichiariamo e inizializziamo altre due variabili, “f_baseNum” e “f_expoNum”, con il tipo di dati “float”. Li inizializziamo rispettivamente con “-9.2” e “5”. Quindi, dichiariamo 'result_2' come tipo di dati 'double'. Inizializziamo ora la variabile “result_22” utilizzando il metodo “pow()”, passando “f_baseNum” e “f_expoNum”. Successivamente, utilizziamo il comando 'cout' per stampare il risultato.
Codice 3:
#includeutilizzando spazio dei nomi standard ;
int principale ( ) {
lungo Doppio base_num = 4.5 ;
int expo_num = - 2 ;
lungo Doppio risultato_1 ;
risultato_1 = pow ( numero_base, numero_expo ) ;
cout << 'Base_num qui è long double e expo_num è di tipo intero' << fine << fine ;
cout << base_num << '^' << expo_num << ' = ' << risultato_1 << fine << fine ;
galleggiante f_baseNum = - 9.2 , f_expoNum = 5 ;
Doppio risultato_2 ;
risultato_2 = pow ( f_baseNum, f_expoNum ) ;
cout << 'F_baseNum qui è in float e f_expoNum è in double' << fine << fine ;
cout << f_baseNum << '^' << f_expoNum << ' = ' << risultato_2 ;
ritorno 0 ;
}
Produzione :
Dopo aver compilato questo codice, riceviamo un messaggio di errore che dice che la funzione power non è stata dichiarata in questo ambito. Significa che abbiamo mancato il file header in cui è dichiarata questa funzione.
L'errore è ora risolto utilizzando il file di intestazione '
Dopo averlo inserito, il codice viene rispettato con successo e otteniamo l'output del nostro codice che è mostrato anche qui.
Potremmo anche ottenere l'output utilizzando un altro file di intestazione, il file di intestazione '
Dopo aver aggiunto '
Conclusione
In questo articolo viene discusso in dettaglio anche l'errore 'riferimento non definito a pow' o 'pow non è stato dichiarato in questo ambito' nella programmazione C++. Abbiamo anche esplorato i modi o i file di intestazione che aiutano a rimuovere l'errore per una corretta compilazione del codice. Abbiamo dimostrato gli esempi in cui abbiamo mostrato il messaggio di errore e il risultato del codice dopo aver rimosso quel messaggio di errore.