Fonction Basename() en langage C

Fonction Basename En Langage C



La gestion des fichiers est une ressource très importante et est largement utilisée dans la programmation. Nous pouvons y stocker ou éliminer des informations, soit générées par l'utilisateur, soit des données et paramètres importants pour le fonctionnement de notre programme dans des fichiers système.

La plupart des différentes fonctions fournies par le langage C pour ouvrir et modifier les fichiers utilisent leur chemin comme argument d'entrée pour pointer vers eux. Cependant, il existe des cas où nous n'avons besoin de connaître que le nom du fichier et non son chemin complet.

Dans ce Astuce Linux article, vous apprendrez comment obtenir le nom de fichier d'un chemin qui est spécifié avec le nom de base() fonction. Nous examinerons en détail la syntaxe, les arguments d'entrée et de sortie et les types de données acceptés. Après avoir vu comment nom de base() fonctionne théoriquement, nous appliquerons ce que nous avons appris avec un exemple pratique qui comprend les extraits de code et les images qui montrent le processus étape par étape sur la façon d'utiliser cette fonction dans le langage C.







Syntaxe de la fonction Basename() en langage C

char * nom de base ( char * chemin )



Description de la fonction Basename() en langage C

La nom de base() La fonction obtient le nom du dernier composant du chemin d'un fichier ou d'un dossier au format chaîne dont le pointeur est 'chemin'. Cette fonction renvoie le pointeur vers une chaîne contenant le nom complet du dernier composant du chemin.



Le pointeur vers la chaîne qui spécifie le chemin est du même type que le pointeur que fopen() utilise comme argument d'entrée pour ouvrir les fichiers. Il est pratique d'utiliser ces fonctions ensemble.





La nom de base() La fonction est définie dans l'en-tête « libgen.h ». Pour l'utiliser, nous devons l'inclure dans notre fichier '.c' ou '.h' comme suit :

# comprendre < libgen.h >

Comment obtenir le nom d'un fichier avec la fonction Basename() en langage C

Dans cet exemple, nous expliquons le processus étape par étape sur la façon d'obtenir le nom d'un fichier ou le dernier composant d'un chemin donné en utilisant le nom de base() fonction.



Tout d'abord, nous devons insérer les en-têtes dans notre fichier '.c' qui définissent les fonctions que nous utilisons. Dans ce cas, ce sont l'en-tête 'stdio.h' pour utiliser la fonction printf() qui nous permet d'afficher le nom du fichier et son chemin dans la console de commande et l'en-tête 'libgen.h' qui définit le nom de base() fonction.

Ensuite, dans la fonction 'main', nous définissons les deux pointeurs qui sont nécessaires pour les chaînes que nous utilisons lors de l'appel de la nom de base() fonction. Le premier d'entre eux est le path_Ptr de type char et sert de pointeur vers la chaîne qui contient le chemin spécifié vers le fichier. Ce pointeur est l'argument d'entrée du nom de base() . Pour cet exemple, nous ajoutons le chemin absolu '/home/documents/example.c' qui est le chemin vers le fichier '.c'.

Le deuxième pointeur que nous définissons est name_Ptr de type char et sert de pointeur vers la chaîne qui est l'argument de sortie que la fonction basename() utilise pour renvoyer le nom du fichier.

Avec les pointeurs définis et le chemin spécifié, nous appelons la fonction basename(), en passant le path_Ptr pointeur comme argument d'entrée et le nom_Ptr pointeur comme argument de sortie comme suit :

nom_Ptr = nom de base ( path_Ptr ) ;

Voici le code complet pour obtenir le nom de fichier ou le dernier composant du chemin spécifié dans path_Ptr . En utilisant la fonction printf(), nous affichons le chemin et le message ' Le nom du fichier est : ” dans la console de commande, suivi du nom du fichier obtenu à l'aide de la fonction basename.

#include
#include

vide principal ( )
{

carboniser * nom_Ptr ;
carboniser * chemin_Pt r = '/home/Documents/exemple.c' ;
nom_Ptr = nom de base ( path_Ptr ) ;
printf ( ' \n \n Le chemin du fichier est : %s \n \n ' , path_Ptr ) ;
printf ( ' \n \n Le nom du fichier est : %s \n \n ' , nom_Ptr ) ;

}

Pour compiler ce code dans le gcc, nous devons exécuter le ' gcc chemin du fichier -O nom de la sortie ».

~$ gcc Documents / exemple.c -O Exemple

Pour exécuter la sortie, nous devons exécuter la commande « ./ output name ».

~$ . / Exemple

Dans la figure suivante, vous pouvez voir le résultat de l'exécution de la compilation qui affiche le chemin et le nom du fichier dans la console de commande qui est spécifié dans le chemin dans path_Ptr .

Conclusion

Dans ce Astuce Linux article, vous avez appris à utiliser nom de base() fonction pour obtenir le nom du fichier ou le dernier composant d'un chemin donné. Nous avons examiné la théorie de cette fonction, ses arguments d'entrée et de sortie, et le type de données que chacun d'eux accepte. Ensuite, nous avons examiné un exemple pratique en vous montrant un processus étape par étape sur la façon d'insérer les en-têtes nécessaires, de définir les pointeurs que la fonction utilise comme arguments d'entrée et de sortie, et de récupérer le nom du fichier en appelant le nom de base() .

Nous espérons que vous avez trouvé cet article utile. Pour plus d'articles comme celui-ci, utilisez le moteur de recherche sur notre site Web.