Come verificare l'errore Malloc in C

Come verificare l'errore Malloc in C
Il malloc è una funzione del linguaggio C utilizzato per allocare la memoria a alcune variabili. Restituisce anche un puntatore. Possiamo anche utilizzare la funzione Malloc per verificare gli errori sull'allocazione della memoria. Quando un metodo Malloc si trova incapace di allocare la memoria, di solito restituisce null. Puoi anche tramite un messaggio di errore se l'allocazione non è riuscita a gestire i puntatori. In questa guida, vedremo l'implementazione della funzione Malloc per allocare la memoria e controllare l'errore per l'allocazione della memoria. Quindi, avvia l'implementazione semplicemente accedi dal sistema Linux.

Esempio 01

Il nostro primo esempio sarà assegnare una memoria mentre restituirà un puntatore nella lingua C. Apri il tuo terminale Linux con un tasto di scelta rapida "Ctrl+alt+T". Crea un nuovo file “Malloc.C "con un comando" touch "nella shell e quindi aprilo all'interno dell'editor GNU.

Ora che il file è stato aperto nell'editor aggiungi i file di intestazione richiesti come mostrato nell'immagine seguente. Abbiamo dichiarato il metodo principale in esso mentre inizializzava un puntatore "P". Il metodo Malloc è stato utilizzato per creare una memoria e la dimensione della memoria appena creata verrà restituita al puntatore "P". Questa era la sintassi standard di allocazione o creazione di una memoria in c. L'istruzione "if" illustra che se il valore del puntatore non è nullo, stamperà che la memoria è stata creata correttamente.

Salva il file del codice con "Ctrl+S" e torna al terminale usando "Ctrl+S". Il compilatore "GCC" è stato ampiamente utilizzato per la compilation di file C in Linux. Lo useremo anche noi. Dopo l'esecuzione di un file, abbiamo ricevuto un messaggio di successo.

Esempio 02

Controlliamo l'esempio che illustra come il sistema attraverso un'eccezione se si verifica un errore. Quindi, abbiamo aperto lo stesso file nell'editor "GNU". All'interno del metodo principale, abbiamo inizialmente inizialmente una variabile di tipo intero "array_size" che indica che la dimensione di un array è vuota. Nella riga successiva, abbiamo definito un puntatore di doppio tipo lungo. Il valore Array_Size è stato utilizzato per creare una memoria e restituito a un puntatore "P". Se il valore di un puntatore è uguale a null, il sistema stamperà che si è verificato l'errore e il sistema è fuori memoria. Il programma verrà chiuso contemporaneamente. Se l'istruzione "if" è stata errata, l'istruzione di stampa esterna verrà eseguita.

Compiliamo il malloc.C file prima con un compilatore GCC in shell Linux e quindi eseguilo. Come il valore definito nella variabile intera costante "array_size" era null. Quindi, ha lanciato un errore e ha visualizzato che il sistema era fuori memoria.

Esempio 03

Abbiamo un'altra illustrazione per vedere il funzionamento del metodo Malloc nella lingua C. Il nuovo file "Nuovo.C "è stato aperto nell'editore. Tutti i file di intestazione richiesti sono stati inclusi. Il metodo principale è stato utilizzato per inizializzare una variabile intera "N". L'istruzione di stampa è stata utilizzata per chiedere all'utente di inserire qualsiasi numero desiderato. Il metodo Scanf viene utilizzato per ottenere valore per l'utente e vincolare quel valore con variabile "N". La funzione Malloc è stata utilizzata per controllare la creazione della memoria e tornare a un puntatore "P". Lo stesso controllo è stato utilizzato sul valore del puntatore nullo. Il primo loop "per" riceve input dall'utente e lo riassume con il valore del puntatore. Un altro ciclo "per" è stato utilizzato per stampare il valore di riassunto.

La compilazione e l'esecuzione sono state eseguite come di seguito. Gli utenti hanno inserito i valori e hanno ottenuto il valore risultante.

Abbiamo aggiornato il codice e assegniamo un valore vuoto alla variabile "N" per vedere la modifica.

Poiché la dimensione della memoria non è stata definita, l'esecuzione dopo la compilation mostra il messaggio di errore "memoria non disponibile".

Conclusione

Questo tutorial contiene i migliori esempi che ti aiuteranno a vedere come funziona il metodo Malloc per identificare un errore al problema dell'allocazione della memoria. Speriamo che tu non abbia mai avuto problemi mentre l'implementazione della funzione Malloc.