Basename() funkcija C kalba

Basename Funkcija C Kalba



Failų valdymas yra labai svarbus išteklius ir plačiai naudojamas programuojant. Juose galime saugoti arba disponuoti informacija, kurią sugeneravo vartotojas, arba svarbius duomenis ir parametrus mūsų programos veikimui sistemos failuose.

Daugelis įvairių funkcijų, kurias C kalba suteikia failams atidaryti ir redaguoti, naudoja savo kelią kaip įvesties argumentą, kad juos nukreiptų. Tačiau yra atvejų, kai mums reikia žinoti tik failo pavadinimą, o ne visą jo kelią.

Šiame Linux patarimas Straipsnyje sužinosite, kaip gauti failo pavadinimą kelio, nurodyto su pagrindinis vardas () funkcija. Išsamiai apžvelgsime sintaksę, įvesties ir išvesties argumentus bei priimtus duomenų tipus. Pamatęs kaip pagrindinis vardas () veikia teoriškai, tai, ką išmokome, pritaikysime praktiniu pavyzdžiu, apimančiu kodo fragmentus ir vaizdus, ​​​​kurie žingsnis po žingsnio parodo, kaip naudoti šią funkciją C kalba.







Funkcijos Basename() sintaksė C kalba

char * pagrindinis pavadinimas ( char * kelias )



Funkcijos Basename() aprašymas C kalba

The pagrindinis vardas () funkcija gauna paskutinio failo ar aplanko kelio komponento pavadinimą eilutės formatu, kurio žymeklis yra „kelias“. Ši funkcija grąžina žymeklį į eilutę, kurioje yra visas paskutinio kelio komponento pavadinimas.



Rodyklė į eilutę, kuri nurodo kelią, yra to paties tipo kaip ir rodyklė, kurią fopen() naudoja kaip įvesties argumentą failams atidaryti. Patogu šias funkcijas naudoti kartu.





The pagrindinis vardas () funkcija apibrėžta „libgen.h“ antraštėje. Norėdami jį naudoti, turime įtraukti jį į „.c“ arba „.h“ failą taip:

# įtraukti < libgen.h >

Kaip gauti failo pavadinimą su bazinio pavadinimo () funkcija C kalba

Šiame pavyzdyje paaiškiname žingsnis po žingsnio, kaip gauti failo pavadinimą arba paskutinį nurodyto kelio komponentą naudojant pagrindinis vardas () funkcija.



Pirmiausia į „.c“ failą turime įterpti antraštes, kurios apibrėžia mūsų naudojamas funkcijas. Šiuo atveju tai yra „stdio.h“ antraštė, skirta naudoti printf() funkciją, kurią naudojame failo pavadinimui ir jo keliui komandų pulte rodyti, ir antraštę „libgen.h“, kuri apibrėžia pagrindinis vardas () funkcija.

Tada „pagrindinėje“ funkcijoje apibrėžiame dvi rodykles, kurių reikia eilutėms, kurias naudojame skambinant pagrindinis vardas () funkcija. Pirmasis iš jų yra kelias_Ptr char tipo ir tarnauja kaip rodyklė į eilutę, kurioje yra nurodytas kelias į failą. Šis rodyklė yra įvesties argumentas pagrindinis vardas () . Šiame pavyzdyje pridedame absoliutų kelią „/home/documents/example.c“, kuris yra kelias į „.c“ failą.

Antrasis mūsų apibrėžiamas žymeklis yra char tipo name_Ptr ir tarnauja kaip rodyklė į eilutę, kuri yra išvesties argumentas, kurį funkcija basename() naudoja failo pavadinimui grąžinti.

Kai nurodytos rodyklės ir nurodytas kelias, iškviečiame funkciją basename(), perduodami kelias_Ptr žymeklį kaip įvesties argumentą ir pavadinimas_Ptr žymeklį kaip išvesties argumentą taip:

vardas_Ptr = bazinis vardas ( kelias_Ptr ) ;

Toliau pateikiamas visas kodas, skirtas gauti failo pavadinimą arba paskutinį nurodyto kelio komponentą kelias_Ptr . Naudodami funkciją printf () rodome kelią ir pranešimą ' Failo pavadinimas yra: “ komandų konsolėje, po kurio nurodomas failo, gauto naudojant bazinio pavadinimo funkciją, pavadinimas.

#include
#include

tuščias pagrindinis ( )
{

char * vardas_Ptr;
char * kelias_Pt r = '/home/Documents/example.c' ;
vardas_Ptr = bazinis vardas ( kelias_Ptr ) ;
printf ( \n \n Failo kelias yra: %s \n \n , kelias_Ptr ) ;
printf ( \n \n Failo pavadinimas yra: %s \n \n , vardas_Ptr ) ;

}

Norėdami sukompiliuoti šį kodą į gcc, turime paleisti „ gcc bylos kelias -O išvesties pavadinimas“ komandą.

~$ gcc Dokumentai / pavyzdys.c -O pavyzdys

Norėdami vykdyti išvestį, turime paleisti komandą „./ output name“.

~$ . / pavyzdys

Toliau pateiktame paveikslėlyje galite pamatyti kompiliavimo vykdymo rezultatą, kuriame rodomas kelias ir failo pavadinimas komandų konsolėje, kuris nurodytas kelyje kelias_Ptr .

Išvada

Šiame Linux patarimas Straipsnyje sužinojote, kaip naudotis pagrindinis vardas () funkcija, kad gautų failo pavadinimą arba paskutinį nurodyto kelio komponentą. Išnagrinėjome šios funkcijos teoriją, jos įvesties ir išvesties argumentus bei duomenų, kuriuos kiekviena iš jų priima, tipą. Tada pažvelgėme į praktinį pavyzdį, parodydami nuoseklų procesą, kaip įterpti reikiamas antraštes, apibrėžti rodykles, kurias funkcija naudoja kaip įvesties ir išvesties argumentus, ir nuskaityti failo pavadinimą skambinant pagrindinis vardas () .

Tikimės, kad šis straipsnis jums buvo naudingas. Norėdami gauti daugiau tokių straipsnių, naudokite mūsų svetainės paieškos variklį.