פונקציית Posix Open עם תכנות C

Posix Open Function With C Programming



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

פונקציה זו מכילה קבוצת פרמטרים המועברים יחד עם פונקציה זו לפתיחת קובץ שצוין. נדון בפרמטרים אלה בכותרת הבאה של מאמרנו. עם זאת, המטרה העיקרית של מאמר זה היא ללמד אותך אודות השימוש בפונקציית Posix Open ב- Linux Mint 20. במאמר זה למד כיצד פועלת הפונקציה Open עם תכנות C.







פרמטרים של הפונקציה הפתוחה של Posix

הפונקציה Posix Open מכילה שני פרמטרים המחולקים עוד לסוגים שונים. הפרמטר הראשון ידוע בשם נָתִיב , המתייחס למיקום הקובץ שברצונך לפתוח. אם אתה יוצר את קוד C שלך כדי לפתוח קובץ באותה ספרייה שבה הקובץ שיש לפתוח, עליך רק לכתוב את שם הקובץ ולהשמיט את הנתיב שלו. עם זאת, אם הקובץ שיש לפתוח שוכן בספרייה אחרת כלשהי, עליך לציין את הנתיב המלא שלו כפרמטר לפונקציה Open ולאחר מכן את קו החיתוך הקדמי (/).



הפרמטר השני של הפונקציה Posix Open ידוע בשם דֶגֶל , המתייחס לאפשרויות שבהן ניתן לפתוח קובץ. אפשרויות אלה הן לקריאה בלבד, לכתיבה בלבד, לקריאה ולכתיבה, ליצור קובץ ולמנוע יצירת קבצים. הדגלים המקבילים של פעולות אלה הם O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, ו O_EXCL בהתאמה. אתה יכול להשתמש באחד מהדגלים האלה בכל פעם או שאתה יכול לשלב יותר מדגל אחד בו זמנית, בהתאם לדרישות שלך, להפריד באמצעות | סֵמֶל. תתחיל להבין את הדגלים הללו בצורה ברורה יותר לאחר קריאת הדוגמא להלן.



דוגמה: שימוש בפונקציית Open Posix ב- Linux Mint 20

כדי לתת דוגמה לשימוש בפונקציית Posix Open עם תכנות C ב- Linux Mint 20, יצרנו תוכנית המנסה לפתוח קובץ. אם הקובץ הזה כבר קיים, אז הפונקציה הזו פשוט תפתח אותו; אחרת, הפונקציה תיצור קובץ עם השם שצוין. כעת, נסתכל על כל שלבי הביצוע של תוכנית זו, החל מיצירתה.





שלב 1: צור תוכנית לדוגמא לבדיקת הפונקציה הפתוחה של Posix

כאן יצרנו מסמך בספריית הבית של מערכת Linux Mint 20 שלנו ושמנו אותו OpenFunction.c. לאחר יצירת מסמך זה, נפתח אותו ונקליד את הקוד המוצג בתמונה למטה בקובץ זה.



בקוד המוצג בתמונה למעלה, יצרנו משתנה שלם, בשם fd , המתייחס למתאר הקבצים. למשתנה זה יוקצה ערך ההחזרה של הפונקציה Open. הערך של משתנה זה יהיה 3 אם הפונקציה Open מופעלת בהצלחה. אחרת, הערך שלו יהיה -1. בפרמטרים של הפונקציה Open, סיפקנו שם קובץ, כלומר NewFile.txt. קובץ זה לא היה קיים במערכת שלנו בעבר, מה שאומר שפונקציית הפתיחה שלנו תיצור קובץ זה.

כמו כן, ציינו באמצעות דגלי הפונקציה Open כי אם הקובץ כבר קיים, יש לפתוח את הקובץ במצב קריאה בלבד; ואילו אם הוא אינו קיים, אז הפונקציה Open פשוט תיצור קובץ עם השם שצוין. ציינו גם כי אם הערך של fd משתנה פחות מאפס, אז הפונקציה תדפיס גם את השגיאה שאירעה בעת פתיחת הקובץ שצוין. לבסוף, תוכל לשמור את הקוד שלך על ידי לחיצה על Ctrl + S .

שלב 2: הידור תוכנית לדוגמא

לאחר כתיבת התוכנית לדוגמה, נפעיל את הטרמינל כדי לאסוף אותו עם הפקודה הבאה:

$gccOpenFunction.c –o OpenFunction

כאן, OpenFunction.c מתייחס לקובץ התוכנית לדוגמה שברצוננו לקמפל, ואילו OpenFunction לאחר הדגל -o מתייחס לקובץ האובייקט שייווצר לאחר הידור.

אם אוסף התוכנית לדוגמה שלנו מתבצע בהצלחה, לא נראה הודעות שגיאה במסוף לאחר הפעלת התוכנית, כפי שמוצג בתמונה למטה:

שלב 3: הפעל תוכנית לדוגמא

לבסוף, לאחר חיבור התוכנית לדוגמא שלנו, נוכל להריץ אותה ב- Linux Mint 20 על ידי הוצאת הפקודה הבאה:

$./OpenFunction

כאן, OpenFunction מתייחס לאותו קובץ אובייקט שנוצר בעקבות אוסף התוכנית לדוגמא שלנו.

אתה יכול לראות בפלט של התוכנית לדוגמא שלנו בתמונה למטה כי הערך של משתנה קובץ התיאורים שלנו, כלומר, fd , הוא 3. פלט זה אומר שהקוד בוצע בהצלחה. במילים אחרות, קובץ בשם NewFile.txt נוצר בהצלחה מכיוון שהקובץ לא היה קיים בעבר במערכת שלנו. אם אתה רוצה, אתה יכול אפילו לבדוק את זה בספריית הבית שלך כדי לוודא אם הקובץ נוצר.

סיכום

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