מאקרו C++ __FILE__

M Qrw C File



פקודות המאקרו הן קטע קוד כלשהו בסקריפט כלשהו בעל שם ספציפי כלשהו. כאשר כל פקודות המאקרו מבוצעות, הקוד שמאחוריהן מבוצע לביצוע משימה מסוימת. בדיוק ככה, ה-__FILE__ הוא מאקרו המשמש בשפת C++ כדי לקבל את הנתיב לקובץ ספציפי. אז, היום במדריך זה, נדון בעבודה של מאקרו C++ __FILE__.

דוגמה 01:

הבה ניקח את הדוגמה הראשונה של המאקרו __FILE__ ב-C++ על ידי הפעלת יישום מסוף המסוף. ייתכן שאתה משתמש בקיצור 'Ctrl+Alt+T' כדי לעשות זאת. דרך נוספת לפתוח את המעטפת היא להשתמש באזור הפעילות בתפריט אם שכחת את מקש הקיצור. לאחר הפעלת קונסולת המסוף על המסך שלך, נסה ליצור קובץ c++ חדש כדי לעשות בו קוד. ניתן ליצור קובץ באמצעות שאילתת 'מגע' פשוטה, כפי שמוצג בתמונה המצורפת למטה. יש לציין את השם של קובץ חדש שנוצר באמצעות מילת המפתח 'מגע'.







חייב להיות מותקן עורך כלשהו במערכת Ubuntu 20.04 Linux שלך כדי לעשות בו שימוש לקידוד ופתיחת הקבצים החדשים שנוצרו. העורכים המומלצים ביותר המוכרים בקרב משתמשי לינוקס הם GNU Nano ועורך Vim. מלבד זאת, ניתן להשתמש בעורך הטקסט גם במקרה ששני העורכים שהוזכרו לעיל אינם פועלים. אז, כבר התקנו את עורך GNU Nano. לפיכך, אנו נשתמש בו כדי לפתוח ולערוך את הקובץ כדי ליצור קוד. השתמש במילת המפתח 'ננו' יחד עם שם הקובץ כדי לגרום לעורך לעבוד.





כעת, קובץ ה-C++ החדש שנוצר macro.cc מוכן לקידוד בעורך. בואו נתחיל ליישם קוד C++ בזמן שאנו מיישמים מאמר זה כדי לראות את פעולת המאקרו __FILE__. התחלנו את קוד ה-C++ שלנו על ידי הוספת כותרת הקלט-פלט הסטנדרטית בחלקו העליון. מילת המפתח 'כלול' שימשה עם סימן ה-hash כדי לעשות זאת. ללא כותרת זו, הקלט והפלט של קוד C++ לא יפעלו בקונסולה עם ההידור והביצוע.





שיטת main() היא עמוד התווך הבסיסי של הקוד שלנו שכן הביצוע מתחיל ממנו ומסתיים בו. בתוך שיטת main() תתבצע העבודה בפועל. השתמשנו בקוד שורה אחת בשיטת main() שלנו כדי לתאר את הפונקציונליות של המאקרו __FILE__. אז נעשה כאן שימוש במשפט printf, תוך שימוש בשני הערכים כארגומנטים, כלומר, מחרוזת שלוקחת את שם הקובץ ואת פונקציית המאקרו.

המאקרו __FILE__ משמש כאן כדי להשיג את נתיב הקובץ הנוכחי או את שמו. בעוד שה-'%S' משמש להדפסת הנתיב הנוכחי של קובץ או שמו בתוך מחרוזת. עליך לשמור את הקוד שלך לפני הביצוע בעזרת קיצור דרך 'Ctrl+S'. כעת הקוד נשמר, נסה לחזור למסוף המעטפת באמצעות קיצור הדרך 'Ctrl+X'.



כשסיימנו עם קוד C++ עבור המאקרו __FILE__, בואו נתחיל את הקומפילציה של קוד C++. עבור ההידור, כבר התקנו את המהדר g++ כדי להדר את קוד C++. אז, המהדר g++ נוצל בטרמינל כדי להדר את הקובץ 'macro.cc'. לאחר ההידור, הוא לא מחזיר דבר, מה שמצביע על כך שקוד ה-C++ נמצא בתוך קובץ macro.cc נכון מבחינה סמנטית. לאחר הקומפילציה מגיעים התורות לביצוע קוד. כדי להפעיל את קובץ הקוד, אנו נוטים להשתמש בשאילתה הפשוטה './.aout'. עם הפעלת הקובץ macro.cc, קיבלנו את שם הקובץ כמו בתמורה. כך פועל המאקרו C++ __FILE__.

דוגמה 02:

יש לנו דוגמה נוספת לרדת לעומק כדי להסתכל על הפונקציונליות של המאקרו C++ __FILE__ במערכת אובונטו 20.04. כפי שראינו כיצד המאקרו C++ __FILE__ פועל כאשר נעשה בו שימוש כדי להביא את נתיב הקובץ של קובץ בו הוא הוזכר.

כעת, נשתמש במאקרו C++ __FILE__ כדי לקבל את נתיב הקובץ או שם הקובץ שאינו הקובץ עליו אנו עובדים כעת. אז, פתחנו את אותו קובץ macro.cc בעורך GNU Nano כדי לעדכן את הקוד. הוספנו את כותרת הקלט-פלט הרגילה עם מילת המפתח include ואתחול פונקציה main() עם סוג החזרה של מספר שלם.

בתוך שיטת main() משפט ההדפסה הראשון זהה לזה הישן כדי לקבל את נתיב הקובץ הנוכחי עליו אנו עובדים כעת. לאחר מכן, השתמשנו במילת המפתח #line עם שם קובץ אחר, כלומר, 'new.txt' בשורה ברציפות הבאה. זה כדי לציין את הקובץ מלבד הקובץ הנוכחי שעבורו נקבל את שמו או נתיב. הצהרת printf הבאה נוצלה כדי להדפיס את הנתיב של קובץ 'new.txt' בעזרת מאקרו C++ __FILE__. שמור את הקוד המעודכן החדש שלך כדי למנוע אי נוחות בזמן הקומפילציה. השתמש ב-'Ctrl+S' כדי לעשות זאת.

לאחר שמירת הקובץ המעודכן, צא ממנו באמצעות 'Ctrl+X' מהמקלדת. כעת, חזרנו למסך המעטפת.

בואו נקמפל את הקובץ המעודכן. השתמש ב-g++ מהדר כדי לעשות זאת עם שם הקובץ macro.cc. לאחר ההידור המוצלח, הפעל את הקוד עם הפקודה './a.out' במסוף. הפלט מציג תחילה את הנתיב לקובץ הנוכחי, ולאחר מכן הנתיב לקובץ השני, 'new.txt' הוצג על מסך המעטפת. תראה כמה קל להשתמש במאקרו __FILE__ כדי להציג את נתיב הקובץ במעטפת.

דוגמה 03:

בואו נסתכל על המאקרו __LINE__ יחד עם המאקרו __FILE__ ב-C++. המאקרו __LINE__ יציג את מספר השורה של הקובץ שבו נעשה שימוש במאקרו. אז, פתח את אותו קובץ ועדכן את שתי הצהרות printf. לפני המאקרו C++ __LINE__, הוספנו את המאקרו C++ __LINE__. מאקרו __LINE__ זה מקבל את מספר השורה של קובץ נוכחי שבו ה-__FILE__ מגיע ראשון. בעוד שהמאקרו __LINE__ הבא יקבל את מספר השורה הראשונה של הקובץ השני כי כבר הזכרנו את מספר השורה עם שם הקובץ בקוד.

לאחר השמירה והיציאה מהקובץ, חזרנו למסוף המעטפת. אנו משתמשים באותה פקודת g++ כדי להדר את קוד הקובץ C++ macro.cc. הקומפילציה המוצלחת מובילה לפקודת הביצוע. כעת נעשה שימוש בפקודה './a.out' כדי לעשות זאת. הביצוע אומר לנו שהקובץ הראשון, כלומר הקובץ הנוכחי בשורה 3, בעוד שהמאקרו __FILE__ נמצא בשורה הראשונה של הקובץ השני המוזכר בקוד.

סיכום:

מאמר זה מכיל את ההגדרה של פקודות מאקרו ודן בשימוש במאקרו C++ __FILE__ במערכת אובונטו 20.04. המאקרו C++ __LINE__ נדון גם בכמה דוגמאות כדי להמחיש יותר את פעולת המאקרו C++ __FILE__. לסיכום, יש לנו תקווה גדולה שהמאמר הזה יעזור לך עם המאקרו C++ __FILE__ במיטבו.