C++ __FILE__ macro

C File Macro



Ang mga macro ay ilang piraso ng code sa ilang script na may ilang partikular na pangalan. Kapag ang alinman sa mga macro ay naisakatuparan, ang code sa likod ng mga ito ay ipapatupad upang maisagawa ang isang tiyak na gawain. Katulad nito, ang __FILE__ ay isang macro na ginagamit sa loob ng wikang C++ upang makuha ang landas sa isang partikular na file. Kaya, ngayon sa gabay na ito, tatalakayin natin ang paggawa ng isang C++ __FILE__ macro.

Halimbawa 01:

Kunin natin ang unang halimbawa ng __FILE__ macro sa C++ sa pamamagitan ng pagsisimula ng terminal console application. Maaaring ginagamit mo ang shortcut na “Ctrl+Alt+T” para gawin ito. Ang isa pang paraan upang buksan ang shell ay ang paggamit sa menu ng Activity area kung nakalimutan mo ang shortcut key. Pagkatapos mailunsad ang terminal console sa iyong screen, subukang gumawa ng bagong c++ file para gumawa ng code dito. Ang isang file ay maaaring gawin gamit ang isang simpleng query na 'pindutin', tulad ng ipinapakita sa nakalakip na larawan sa ibaba. Ang pangalan ng isang bagong likhang file ay dapat ibigay kasama ng keyword na 'pindutin'.







Dapat mayroong ilang editor na naka-install sa iyong Ubuntu 20.04 Linux system upang magamit ito para sa coding at pagbubukas ng mga bagong likhang file. Ang pinaka inirerekomendang mga editor na kilala sa mga gumagamit ng Linux ay ang GNU Nano at Vim editor. Maliban diyan, maaari ding gamitin ang text editor kung sakaling hindi gumagana ang mga naunang nabanggit na editor. Kaya, na-install na namin ang GNU Nano editor. Kaya, gagamitin namin ito upang buksan at i-edit ang file upang makagawa ng code. Gamitin ang keyword na 'nano' kasama ang pangalan ng file para gumana ang editor.





Ngayon, ang bagong likhang C++ file na macro.cc ay handa na para sa coding sa editor. Simulan natin ang pagpapatupad ng C++ code habang ipinapatupad natin ang artikulong ito upang makita ang paggana ng __FILE__ macro. Sinimulan namin ang aming C++ code sa pamamagitan ng pagdaragdag ng karaniwang input-output header sa tuktok nito. Ang keyword na 'isama' ay ginamit kasama ng hash sign upang gawin ito. Kung wala ang header na ito, ang input at output ng C++ code ay hindi gagana sa console sa oras ng compilation at execution.





Ang pangunahing() na pamamaraan ay ang pangunahing haligi ng aming code habang ang pagpapatupad ay nagsisimula dito at nagtatapos dito. Sa loob ng pangunahing() na pamamaraan, ang aktwal na gawain ay gagawin. Gumagamit kami ng isang solong code ng linya sa aming pangunahing() na pamamaraan upang ilarawan ang paggana ng __FILE__ macro. Kaya, ang printf statement ay ginamit dito, kinuha ang dalawang halaga bilang mga argumento, ibig sabihin, string na kumukuha ng pangalan ng file at macro function.

Ang __FILE__ macro ay ginagamit dito upang makuha ang kasalukuyang path ng file o ang pangalan nito. Habang ang '%S' ay ginagamit upang i-print ang kasalukuyang landas ng isang file o ang pangalan nito sa loob ng isang string. Dapat mong i-save ang iyong code bago ang execution sa tulong ng shortcut na “Ctrl+S”. Ngayon ang code ay nai-save, subukang bumalik sa shell terminal gamit ang 'Ctrl+X' shortcut.



Habang tapos na tayo sa C++ code para sa __FILE__ macro, simulan natin ang compilation ng C++ code. Para sa compilation, na-install na namin ang g++ compiler para i-compile ang C++ code. Kaya, ang g++ compiler ay ginamit sa terminal upang i-compile ang file na 'macro.cc'. Sa pagsasama-sama, wala itong ibinalik, na nagpapahiwatig na ang C++ code ay nasa loob ng macro.cc file ay tama sa semantiko. Pagkatapos ng compilation, darating ang mga liko para sa pagpapatupad ng isang code. Upang patakbuhin ang code file, madalas naming gamitin ang './.aout' na simpleng query. Sa pagpapatakbo ng file na macro.cc, nakuha namin ang pangalan ng isang file bilang kapalit. Ito ay kung paano gumagana ang C++ __FILE__ macro.

Halimbawa 02:

Magkaroon tayo ng isa pang halimbawa upang tingnan ang pag-andar ng C++ __FILE__ macro sa loob ng Ubuntu 20.04 system. Tulad ng nakita natin kung paano gumagana ang C++ __FILE__ macro kapag ito ay ginamit upang kunin ang path ng file ng isang file kung saan ito nabanggit.

Ngayon, gagamitin namin ang C++ __FILE__ macro upang makuha ang path ng file o pangalan ng isang file maliban sa file na kasalukuyang ginagawa namin. Kaya, binuksan namin ang parehong file na macro.cc sa editor ng GNU Nano upang i-update ang code. Idinagdag namin ang karaniwang input-output header na may kasamang keyword at nagpasimula ng pangunahing() function na may uri ng integer return.

Sa loob ng pangunahing() na pamamaraan, ang unang pahayag sa pag-print ay kapareho ng luma upang makuha ang kasalukuyang landas ng file kung saan tayo kasalukuyang nagtatrabaho. Pagkatapos noon, ginamit namin ang #line na keyword na may isa pang pangalan ng file, ibig sabihin, 'new.txt' sa susunod na magkasunod na linya. Ito ay upang tukuyin ang file maliban sa kasalukuyang file kung saan kukuha tayo ng pangalan o path nito. Ang susunod na printf statement ay ginamit upang i-print ang path ng isang file na 'new.txt' sa tulong ng isang C++ __FILE__ macro. I-save ang iyong bagong na-update na code upang maiwasan ang anumang abala sa oras ng compilation. Gamitin ang 'Ctrl+S' para gawin ito.

Pagkatapos i-save ang na-update na file, isara ito sa pamamagitan ng 'Ctrl+X' mula sa iyong keyboard. Ngayon, kami ay bumalik sa screen ng shell.

I-compile natin ang na-update na file. Gumamit ng g++ compiler para gawin ito gamit ang pangalan ng isang file na macro.cc. Pagkatapos ng matagumpay na compilation, patakbuhin ang code gamit ang command na './a.out' sa console. Ang output ay nagpapakita ng path sa isang kasalukuyang file muna, pagkatapos ay ang path sa isa pang file, 'new.txt' ay ipinapakita sa shell screen. Tingnan kung gaano kadali gamitin ang __FILE__ macro upang ipakita ang path ng file sa shell.

Halimbawa 03:

Tingnan natin ang __LINE__ macro kasama ang __FILE__ macro sa C++. Ipapakita ng __LINE__ macro ang numero ng linya ng file kung saan ginamit ang macro. Kaya, buksan ang parehong file at i-update ang parehong printf statement. Bago ang C++ __LINE__ macro, idinagdag namin ang C++ __LINE__ macro. Kinukuha ng __LINE__macro na ito ang numero ng linya ng kasalukuyang file kung saan nauuna ang __FILE__. Habang ang susunod na __LINE__ macro ay makakakuha ng unang numero ng linya ng isa pang file dahil nabanggit na namin ang numero ng linya na may pangalan ng file sa code.

Pagkatapos i-save at ihinto ang file, bumalik kami sa shell terminal. Ginagamit namin ang parehong g++ command para i-compile ang C++ macro.cc file code. Ang matagumpay na compilation ay humahantong sa execution command. Ngayon ang command na './a.out' ay ginagamit dito upang gawin ito. Sinasabi sa amin ng execution na ang unang file, ibig sabihin, ang kasalukuyang file sa linya 3, habang ang __FILE__ macro ay nasa unang linya ng isa pang file na binanggit sa code.

Konklusyon:

Ang artikulong ito ay naglalaman ng kahulugan ng mga macro at tinatalakay ang paggamit ng C++ __FILE__ macro sa Ubuntu 20.04 system. Ang C++ __LINE__ macro ay tinalakay din sa loob ng ilang mga halimbawa upang ilarawan ang paggawa ng C++ __FILE__ macro nang higit pa. Sa kabuuan, malaki ang aming pag-asa na ang artikulong ito ay makakatulong sa iyo sa C++ __FILE__macro sa pinakamahusay nito.