Molte delle varie funzioni che la lingua C fornisce per l'apertura e la modifica dei file usano il loro percorso come argomento di input per indicarli. Tuttavia, ci sono casi in cui dobbiamo solo conoscere il nome del file e non il suo percorso completo.
In questo Suggerimento Linux Articolo, imparerai come ottenere il nome file di un percorso specificato con il basename () funzione. Esamineremo la sintassi, gli argomenti di input e output e i tipi di dati accettati in dettaglio. Dopo aver visto come basename () Opere teoricamente, applicheremo ciò che abbiamo appreso con un esempio pratico che include i frammenti e le immagini del codice che mostrano il processo passo-passo su come utilizzare questa funzione nella lingua C.
Sintassi della funzione Basename () in lingua C
char* basename (char* percorso)
Descrizione della funzione Basename () in lingua C
IL basename () La funzione ottiene il nome dell'ultimo componente del percorso di un file o una cartella in formato stringa il cui puntatore è "percorso". Questa funzione restituisce il puntatore a una stringa che contiene il nome completo dell'ultimo componente nel percorso.
Il puntatore alla stringa che specifica il percorso è dello stesso tipo del puntatore che Fopen () utilizza come argomento di input per aprire i file. È conveniente usare queste funzioni insieme.
IL basename () La funzione è definita in "libgen.H ”intestazione. Per usarlo, dobbiamo includerlo nel nostro ".C "o".file h "come segue:
#includere
Come ottenere il nome di un file con la funzione basename () nella lingua C
In questo esempio, spieghiamo il processo passo-passo su come ottenere il nome di un file o l'ultimo componente di un determinato percorso usando il basename () funzione.
Innanzitutto, dobbiamo inserire le intestazioni nel nostro ".File C "che definisce le funzioni che utilizziamo. In questo caso, questi sono lo "stdio.”” ”per utilizzare la funzione printf () che utilizziamo per visualizzare il nome del file e il suo percorso nella console di comando e" libgen.”” ”che definisce il basename () funzione.
Quindi, nella funzione "principale", definiamo i due puntatori necessari per le stringhe che usiamo quando chiamiamo il basename () funzione. Il primo di loro è il path_ptr di tipo char e funge da puntatore alla stringa che contiene il percorso specificato al file. Questo puntatore è l'argomento input per basename (). Per questo esempio, aggiungiamo il percorso assoluto “/home/documenti/esempio.C "che è il percorso per il".file c ".
Il secondo puntatore che definiamo è name_ptr di tipo char e funge da puntatore alla stringa che è l'argomento di output che la funzione basename () utilizza per restituire il nome del file.
Con i puntatori definiti e il percorso specificato, chiamiamo la funzione basename (), passando il path_ptr puntatore come argomento di input e il name_ptr Pointer come argomento di output come segue:
name_ptr = basename (path_ptr);
Quello che segue è il codice completo per ottenere il nome file o l'ultimo componente del percorso specificato in path_ptr. Utilizzando la funzione printf (), visualizziamo il percorso e il messaggio "Il nome del file è:"Nella console di comando, seguito dal nome del file ottenuto utilizzando la funzione basename.
#includere
#includere
void main ()
char* name_ptr;
char* path_pt r = "/home/documenti/esempio.C";
name_ptr = basename (path_ptr);
printf ("\ n \ nthe percorso del file è: %s \ n \ n", path_ptr);
printf ("\ n \ n il nome del file è: %s \ n \ n", name_ptr);
Per compilare questo codice nel GCC, dobbiamo eseguire il "GCC percorso del file -o Nome output "comando.
~ $ GCC documenti/esempio.C -o Esempio
Per eseguire l'output, dobbiamo eseguire il ".comando / nome output ".
~ $ ./esempio
Nella figura seguente, è possibile vedere il risultato dell'esecuzione della compilation che visualizza il percorso e il nome del file nella console di comando che è specificato nel percorso in path_ptr.
Conclusione
In questo Suggerimento Linux Articolo, hai imparato a usare il basename () funzione per ottenere il nome del file o l'ultimo componente di un determinato percorso. Abbiamo esaminato la teoria di questa funzione, i suoi argomenti di input e output e il tipo di dati che ciascuno di essi accetta. Quindi, abbiamo esaminato un esempio pratico mostrandoti un processo passo-passo su come inserire le intestazioni necessarie, definire i puntatori che la funzione utilizza come argomenti di input e output e recuperare il nome del file chiamando il basename ().
Speriamo che tu abbia trovato questo articolo utile. Per altri articoli come questo, usa il motore di ricerca sul nostro sito Web.