C++ __FILE__ makro

C File Makro



Makro ir koda daļa kādā skriptā ar noteiktu nosaukumu. Kad kāds no makro ir izpildīts, aiz tiem esošais kods tiek izpildīts, lai veiktu noteiktu uzdevumu. Tāpat arī __FILE__ ir makro, ko izmanto C++ valodā, lai iegūtu ceļu uz konkrētu failu. Tāpēc šodien šajā rokasgrāmatā mēs apspriedīsim C++ __FILE__ makro darbību.

01. piemērs:

Ņemsim pirmo __FILE__ makro piemēru programmā C++, startējot termināļa konsoles lietojumprogrammu. Lai to izdarītu, iespējams, izmantojat saīsni “Ctrl+Alt+T”. Vēl viens veids, kā atvērt čaulu, ir izmantot izvēlni Darbības apgabals, ja esat aizmirsis īsinājumtaustiņu. Kad ekrānā ir palaista termināļa konsole, mēģiniet izveidot jaunu c++ failu, lai tajā ievadītu kodu. Failu var izveidot ar vienkāršu “pieskāriena” vaicājumu, kā parādīts pievienotajā attēlā. Jaunizveidotā faila nosaukums jānorāda ar atslēgvārdu “touch”.







Jūsu Ubuntu 20.04 Linux sistēmā ir jābūt instalētam redaktoram, lai to izmantotu jaunizveidoto failu kodēšanai un atvēršanai. Ieteicamākie redaktori, kas plaši pazīstami Linux lietotāju vidū, ir GNU Nano un Vim redaktors. Izņemot to, teksta redaktoru var izmantot arī gadījumā, ja abi iepriekš minētie redaktori nedarbojas. Tātad, mēs jau esam instalējuši GNU Nano redaktoru. Tādējādi mēs to izmantosim, lai atvērtu un rediģētu failu, lai izveidotu kodu. Izmantojiet atslēgvārdu “nano” kopā ar faila nosaukumu, lai redaktors darbotos.





Tagad jaunizveidotais C++ fails macro.cc ir gatavs kodēšanai redaktorā. Sāksim ieviest C++ kodu, ieviešot šo rakstu, lai redzētu __FILE__ makro darbību. Mēs esam sākuši savu C++ kodu, pievienojot standarta ievades-izejas galveni tā augšpusē. Atslēgvārds “iekļaut” ir izmantots kopā ar jaucējzīmi, lai to izdarītu. Bez šīs galvenes C++ koda ievade un izvade nedarbosies konsolē kompilācijas un izpildes laikā.





Main () metode ir mūsu koda pamatpīlārs, jo izpilde sākas no tā un beidzas ar to. Main() metodes ietvaros faktiskais darbs tiks veikts. Mēs esam izmantojuši vienas rindas kodu savā main() metodē, lai aprakstītu makro __FILE__ funkcionalitāti. Tātad šeit ir izmantots printf priekšraksts, ņemot abas vērtības kā argumentus, t.i., virkni, izmantojot faila nosaukumu un makro funkciju.

Šeit tiek izmantots makro __FILE__, lai iegūtu pašreizējo faila ceļu vai tā nosaukumu. Kamēr “%S” tiek izmantots, lai virknē izdrukātu faila pašreizējo ceļu vai tā nosaukumu. Pirms izpildes kods ir jāsaglabā, izmantojot īsinājumtaustiņu “Ctrl+S”. Tagad kods ir saglabāts, mēģiniet atgriezties pie čaulas termināļa, izmantojot saīsni “Ctrl+X”.



Tā kā mēs esam pabeiguši ar C++ kodu makro __FILE__, sāksim C++ koda apkopošanu. Kompilācijai mēs jau esam instalējuši g++ kompilatoru, lai apkopotu C++ kodu. Tātad, terminālī ir izmantots kompilators g++, lai apkopotu failu “macro.cc”. Pēc kompilācijas tas neko neatgriež, kas norāda, ka C++ kods macro.cc failā ir semantiski pareizs. Pēc kompilācijas kārta nāk koda izpildei. Lai palaistu koda failu, mēs mēdzam izmantot vienkāršo vaicājumu “./.aout”. Palaižot failu macro.cc, mēs saņemam faila nosaukumu kā pretī. Šādi darbojas C++ __FILE__ makro.

02. piemērs:

Apskatīsim vēl vienu piemēru, lai apskatītu C++ __FILE__ makro funkcionalitāti Ubuntu 20.04 sistēmā. Kā mēs redzējām, kā C++ __FILE__ makro darbojas, kad tas ir izmantots, lai ielādētu faila ceļu, kurā tas ir minēts.

Tagad mēs izmantosim makro C++ __FILE__, lai iegūtu faila ceļu vai nosaukumu failam, kas nav fails, ar kuru pašlaik strādājam. Tātad, mēs esam atvēruši to pašu failu macro.cc GNU Nano redaktorā, lai atjauninātu kodu. Mēs esam pievienojuši standarta ievades-izejas galveni ar iekļaut atslēgvārdu un inicializējuši main() funkciju ar vesela skaitļa atgriešanas veidu.

Main() metodes ietvaros pirmais drukāšanas priekšraksts ir tāds pats kā vecais, lai iegūtu pašreizējo faila ceļu, kurā mēs pašlaik strādājam. Pēc tam esam izmantojuši atslēgvārdu #line ar citu faila nosaukumu, t.i., 'new.txt' nākamajā rindā. Tas ir paredzēts, lai norādītu failu, kas nav pašreizējais fails, kuram mēs iegūsim tā nosaukumu vai ceļu. Nākamais printf priekšraksts ir izmantots, lai ar C++ __FILE__ makro palīdzību izdrukātu faila “new.txt” ceļu. Saglabājiet savu tikko atjaunināto kodu, lai izvairītos no neērtībām kompilācijas laikā. Lai to izdarītu, izmantojiet taustiņu kombināciju Ctrl+S.

Pēc atjauninātā faila saglabāšanas aizveriet to, izmantojot tastatūras taustiņu kombināciju “Ctrl+X”. Tagad mēs esam atgriezušies čaulas ekrānā.

Apkoposim atjaunināto failu. Izmantojiet g++ kompilatoru, lai to izdarītu ar faila nosaukumu macro.cc. Pēc veiksmīgas kompilācijas palaidiet kodu ar komandu “./a.out” konsolē. Izvadā vispirms tiek parādīts ceļš uz pašreizējo failu, pēc tam ceļš uz citu failu, “new.txt” ir parādīts čaulas ekrānā. Paskatieties, cik viegli ir izmantot makro __FILE__, lai čaulā parādītu faila ceļu.

03. piemērs:

Apskatīsim makro __LINE__ un makro __FILE__ programmā C++. Makro __LINE__ parādīs tā faila rindas numuru, kurā makro tika izmantots. Tātad, atveriet to pašu failu un atjauniniet abus printf paziņojumus. Pirms C++ __LINE__ makro esam pievienojuši C++ __LINE__ makro. Šis __LINE__makro iegūst pašreizējā faila rindas numuru, kur __FILE__ ir pirmais. Nākamais __LINE__ makro saņems otra faila pirmās rindas numuru, jo mēs jau esam minējuši rindas numuru ar faila nosaukumu kodā.

Pēc faila saglabāšanas un aizvēršanas esam atgriezušies čaulas terminālī. Mēs izmantojam to pašu g++ komandu, lai apkopotu C++ macro.cc faila kodu. Veiksmīga kompilācija noved pie izpildes komandas. Tagad šeit tiek izmantota komanda “./a.out”. Izpilde norāda, ka pirmais fails, t.i., pašreizējais fails 3. rindiņā, savukārt makro __FILE__ atrodas cita kodā minētā faila pirmajā rindā.

Secinājums:

Šajā rakstā ir ietverta makro definīcija un apskatīta C++ __FILE__ makro izmantošana Ubuntu 20.04 sistēmā. C++ __LINE__ makro ir apspriests arī dažos piemēros, lai vairāk ilustrētu C++ __FILE__ makro darbību. Rezumējot, mēs ļoti ceram, ka šis raksts palīdzēs jums vislabākajā veidā izmantot C++ __FILE__makro.