C++ __FILE__ makro

C File Makro



Makro ialah beberapa kod dalam sesetengah skrip yang mempunyai beberapa nama tertentu. Apabila mana-mana makro dilaksanakan, kod di belakangnya dilaksanakan untuk melaksanakan tugas tertentu. Sama seperti itu, __FILE__ ialah makro yang digunakan dalam bahasa C++ untuk mendapatkan laluan ke fail tertentu. Jadi, hari ini dalam panduan ini, kita akan membincangkan cara kerja makro __FILE__ C++.

Contoh 01:

Mari kita ambil contoh pertama __FILE__ makro dalam C++ dengan memulakan aplikasi konsol terminal. Anda mungkin menggunakan pintasan “Ctrl+Alt+T” untuk berbuat demikian. Cara lain untuk membuka cangkerang ialah menggunakan menu kawasan Aktiviti jika anda terlupa kekunci pintasan. Selepas konsol terminal dilancarkan pada skrin anda, cuba buat fail c++ baharu untuk melakukan kod di dalamnya. Fail boleh dibuat dengan pertanyaan 'sentuhan' mudah, seperti yang ditunjukkan dalam imej yang dilampirkan di bawah. Nama fail yang baru dibuat mesti diberikan dengan kata kunci 'sentuh'.







Mesti ada beberapa editor yang dipasang pada sistem Linux Ubuntu 20.04 anda untuk menggunakannya untuk pengekodan dan membuka fail yang baru dibuat. Editor yang paling disyorkan yang terkenal di kalangan pengguna Linux ialah GNU Nano dan editor Vim. Selain daripada itu, penyunting teks juga boleh digunakan sekiranya kedua-dua penyunting yang dinyatakan sebelum ini tidak berfungsi. Jadi, kami telah pun memasang editor GNU Nano. Oleh itu, kami akan menggunakannya untuk membuka dan mengedit fail untuk membuat kod. Gunakan kata kunci 'nano' bersama-sama dengan nama fail untuk membuat editor berfungsi.





Kini, fail C++ yang baru dibuat macro.cc sedia untuk pengekodan dalam editor. Mari kita mula melaksanakan kod C++ semasa kita melaksanakan artikel ini untuk melihat kerja makro __FILE__. Kami telah memulakan kod C++ kami dengan menambahkan pengepala input-output standard di bahagian atasnya. Kata kunci 'termasuk' telah digunakan dengan tanda cincang untuk berbuat demikian. Tanpa pengepala ini, input dan output kod C++ tidak akan berfungsi di konsol selepas penyusunan dan pelaksanaan.





Kaedah main() ialah tiang asas kod kami kerana pelaksanaan bermula daripadanya dan berakhir di dalamnya. Dalam kaedah main(), kerja sebenar akan dilakukan. Kami telah menggunakan kod baris tunggal dalam kaedah main() kami untuk menerangkan fungsi makro __FILE__. Jadi, pernyataan printf telah digunakan di sini, mengambil dua nilai sebagai argumen, iaitu, rentetan yang mengambil nama fail dan fungsi makro.

Makro __FILE__ digunakan di sini untuk memperoleh laluan fail semasa atau namanya. Manakala “%S” digunakan untuk mencetak laluan semasa fail atau namanya dalam rentetan. Anda mesti menyimpan kod anda sebelum pelaksanaan dengan bantuan pintasan 'Ctrl+S'. Sekarang kod itu disimpan, cuba kembali ke terminal shell menggunakan pintasan 'Ctrl+X'.



Apabila kita selesai dengan kod C++ untuk __FILE__ makro, mari mulakan penyusunan kod C++. Untuk penyusunan, kami telah memasang pengkompil g++ untuk menyusun kod C++. Jadi, pengkompil g++ telah digunakan dalam terminal untuk menyusun fail 'macro.cc'. Selepas penyusunan, ia tidak mengembalikan apa-apa, yang menunjukkan bahawa kod C++ berada di dalam fail macro.cc adalah betul dari segi semantik. Selepas penyusunan, giliran datang untuk melaksanakan kod. Untuk menjalankan fail kod, kami cenderung menggunakan pertanyaan ringkas './.aout'. Setelah menjalankan fail macro.cc, kami telah mendapat nama fail sebagai balasan. Beginilah cara makro C++ __FILE__ berfungsi.

Contoh 02:

Mari kita lihat satu lagi contoh untuk melihat lebih dalam untuk melihat kefungsian C++ __FILE__ makro dalam sistem Ubuntu 20.04. Seperti yang telah kita lihat bagaimana makro C++ __FILE__ berfungsi apabila ia telah digunakan untuk mengambil laluan fail fail di mana ia telah disebut.

Sekarang, kami akan menggunakan makro C++ __FILE__ untuk mendapatkan laluan fail atau nama fail selain daripada fail yang sedang kami kerjakan. Jadi, kami telah membuka fail yang sama macro.cc dalam editor GNU Nano untuk mengemas kini kod. Kami telah menambah pengepala input-output standard dengan kata kunci sertakan dan memulakan fungsi main() dengan jenis pulangan integer.

Dalam kaedah main(), pernyataan cetakan pertama adalah sama dengan yang lama untuk mendapatkan laluan fail semasa yang sedang kami kerjakan. Selepas itu, kami telah menggunakan kata kunci #line dengan nama fail lain, iaitu, 'new.txt' pada baris berturut-turut seterusnya. Ini adalah untuk menentukan fail selain daripada fail semasa yang kami akan mendapat namanya atau laluannya. Pernyataan printf seterusnya telah digunakan untuk mencetak laluan fail 'new.txt' dengan bantuan makro C++ __FILE__. Simpan kod anda yang baru dikemas kini untuk mengelakkan sebarang kesulitan pada masa penyusunan. Gunakan “Ctrl+S” untuk berbuat demikian.

Selepas menyimpan fail yang dikemas kini, keluar melalui 'Ctrl+X' dari papan kekunci anda. Sekarang, kita kembali pada skrin shell.

Mari kumpulkan fail yang dikemas kini. Gunakan pengkompil g++ untuk berbuat demikian dengan nama fail macro.cc. Selepas penyusunan berjaya, jalankan kod dengan arahan './a.out' dalam konsol. Output menunjukkan laluan ke fail semasa dahulu, kemudian laluan ke fail lain, 'new.txt' telah dipaparkan pada skrin shell. Lihat betapa mudahnya menggunakan makro __FILE__ untuk memaparkan laluan fail pada shell.

Contoh 03:

Mari kita lihat makro __LINE__ bersama-sama dengan makro __FILE__ dalam C++. Makro __LINE__ akan memaparkan nombor baris fail yang makro telah digunakan. Jadi, buka fail yang sama dan kemas kini kedua-dua pernyataan printf. Sebelum makro C++ __LINE__, kami telah menambah makro C++ __LINE__. __LINE__makro ini mendapat nombor baris fail semasa di mana __FILE__ didahulukan. Manakala makro __LINE__ seterusnya akan mendapat nombor baris pertama fail lain kerana kami telah menyebut nombor baris dengan nama fail dalam kod.

Selepas menyimpan dan menghentikan fail, kami telah kembali ke terminal shell. Kami menggunakan perintah g++ yang sama untuk menyusun kod fail macro.cc C++. Penyusunan yang berjaya membawa kepada arahan pelaksanaan. Sekarang arahan './a.out' digunakan di sini untuk berbuat demikian. Pelaksanaan memberitahu kami bahawa fail pertama, iaitu, fail semasa dalam baris 3, manakala makro __FILE__ berada pada baris pertama fail lain yang disebut dalam kod.

Kesimpulan:

Artikel ini mengandungi takrifan makro dan membincangkan penggunaan makro C++ __FILE__ dalam sistem Ubuntu 20.04. Makro C++ __LINE__ juga telah dibincangkan dalam beberapa contoh untuk menggambarkan kerja makro C++ __FILE__ dengan lebih lanjut. Kesimpulannya, kami mempunyai harapan yang tinggi bahawa artikel ini akan membantu anda dengan C++ __FILE__makro yang terbaik.