Errore riferimento non definito a una funzione in C

Errore riferimento non definito a una funzione in C
Abbiamo visto e risolto molte eccezioni durante la codifica su qualsiasi linguaggio di programmazione. Il riferimento indefinito è una di quelle eccezioni avvenute principalmente nella lingua C, poiché il nome suggerisce che si verificherebbe quando manca una definizione di funzione dallo script. Pertanto, questo articolo ti darà alcuni metodi semplici per risolvere questo errore mentre inizia con la creazione. Assicurati di accedere dal sistema Linux e aprire il terminale per iniziare l'implementazione tramite il metodo di scelta rapida "Ctrl+Alt+T".

Nota: abbiamo già installato il compilatore GCC nel nostro sistema operativo in esecuzione.

Esempio 01:

Una delle cause popolari per l'errore un riferimento non definito potrebbe essere un numero di nome di una funzione. Quindi, in questo esempio, vedremo come un errore potrebbe essere generato e risolto usando il nome della funzione. Creeremo un nuovo "exp.File C "per aggiungere il nostro codice C ad esso all'interno del terminale di shell.

$ touch exp.C

Il file è stato creato correttamente nella home directory. Per aprire questo file, abbiamo bisogno di alcune applicazioni editor. Pertanto, abbiamo utilizzato il nano editore per aprirlo.

$ nano exp.C

Abbiamo mantenuto il nostro codice C semplice per una facile comprensione dei nostri utenti. Abbiamo incluso un file di intestazione all'inizio di un codice. Successivamente, una funzione principale () è stata definita per stampare che abbiamo lavorato sul metodo principale in questo momento. Gli incantesimi dei nomi delle funzioni non sono corretti. Pertanto, deve visualizzare un errore di riferimento non definito durante la compilazione del codice. Abbiamo salvato il nostro file di codice e siamo tornati alla shell.

Assicurati di avere un compilatore C configurato nel sistema Linux. Abbiamo usato qui il compilatore GCC eterno per compilare il codice C sopra. Al momento della compilation con il compilatore GCC, abbiamo ottenuto il riferimento indefinito al main () come previsto.

$ GCC Exp.C

Quando abbiamo eseguito il file, dice che non esiste un tale file o directory.

$ ./UN.fuori

Correggiamo il codice e modifichiamo il nome della funzione in main () secondo l'immagine seguente.

Pertanto, questa volta, quando compili ed esegui il file, funzionerà perfettamente senza alcun errore, io.e., Riferimento non definito a una funzione.

$ GCC Exp.C
./UN.fuori

Esempio 02:

Facciamo un altro esempio dello stesso errore. Quindi, apri lo stesso file e aggiungi un'intestazione standard input-output. Un prototipo di funzione per il metodo show () è stato dichiarato dopo. Alla fine, il metodo principale è stato definito per stampare un po 'di testo e chiamare la funzione show (), che è stata dichiarata in precedenza.

Al momento della compilazione, abbiamo ricevuto l'errore come riferimento indefinito a Show (). Questo perché il metodo show () è stato dichiarato solo ma non definito nel codice.

$ GCC Exp.C

Per risolvere questo errore, abbiamo aggiornato il codice ancora una volta. Aggiunta la definizione della funzione del metodo show () dopo il metodo principale. Questo metodo contiene una singola istruzione di stampa al suo interno.

Quando abbiamo compilato il file, l'errore è stato risolto e il codice è stato eseguito correttamente.

$ GCC Exp.C
./UN.fuori

Esempio 03:

Un altro errore che la maggior parte degli utenti commette durante la programmazione non è prestare attenzione alla sensibilità del caso della sintassi del linguaggio. Ciò può anche causare l'errore che si verifica un riferimento non definito. Quindi, diamo un'occhiata a questo problema in questo esempio. Finora abbiamo usato lo stesso codice. Abbiamo appena usato la sintassi dei casi diversi per i nomi delle funzioni, i.e., Spettacolo e spettacolo. La definizione della funzione contiene il nome della piccola lettera, mentre la chiamata di funzione contiene lettere capitali. Salva questo codice.

Ha usato il compilatore GCC per compilare Exp.file c. L'errore: riferimento non definito alla funzione show () è apparso sulla shell del terminale come previsto.

$ GCC Exp.C

Per risolvere questo errore, è sufficiente aprire il file e rendere il nome di una funzione uguale nella definizione della sua funzione e nella chiamata di funzione. Quindi, eravamo soliti mostrare (), io.e., Nomi di piccoli casi per andare oltre. Salva questo codice aggiornato per compilarlo.

Quando abbiamo compilato il codice, alla fine, è stato compilato con successo senza che gli errori rimasero. Pertanto, l'esecuzione di questo file funziona bene secondo l'immagine in basso.

$ GCC Exp.C
./UN.fuori

Conclusione:

In questa guida, abbiamo visto come un semplice errore di un utente può causare il riferimento di errore non definito a una funzione. Per risolvere questo errore, abbiamo implementato semplici metodi nelle illustrazioni per renderli ben compresi bene. Speriamo che questo articolo soddisfi le tue esigenze al meglio.