הבדל מפתח – printf לעומת fprintf
פונקציה היא קבוצה של הוראות לביצוע משימה ספציפית. לא ניתן לכתוב את כל ההצהרות באותה תוכנית. לכן, התוכנית מחולקת למספר פונקציות. פונקציות מספקות שימוש חוזר בקוד. בשפת תכנות כמו שפת C, main() היא פונקציה. זה מציין את נקודת ההתחלה של הביצוע. יש פונקציות מובנות ופונקציות מוגדרות על ידי המשתמש. המתכנת יוצר פונקציות המוגדרות על ידי המשתמש. השפה מספקת פונקציות מובנות. המתכנת יכול להשתמש בהם מבלי ליישם מההתחלה. שתי פונקציות מובנות עיקריות בשפת C הן printf() ו-fprintf().מאמר זה דן בהבדל בין שתי הפונקציות הללו. ההבדל העיקרי בין print ל-fprintf הוא ש-printf היא פונקציית C המשמשת להדפסת מחרוזת מעוצבת לזרם פלט סטנדרטי שהוא מסך המחשב, בעוד fprintf היא פונקציית C להדפסת מחרוזת מעוצבת לקובץ.
מה זה printf?
הפונקציה "printf" משמשת למתן פלט בצורה מעוצבת להתקן תצוגה כגון מסך מחשב. התחביר של פונקציית printf הוא כדלקמן.
printf("מחרוזת בפורמט", "רשימת משתנים");
איור 01: printf()
אם המשתמש לא רוצה להדפיס מחרוזת מעוצבת, אפשר להדפיס את המחרוזת כפי שהיא.
לדוגמה printf(“Hello World”);
השיטה להדפסת מחרוזת מעוצבת היא כדלקמן. עיין בדוגמה למטה. "a" ו-"b" הם מספרים שלמים, ולכן הם מצוינים עם %d.
int main(){
int a=10, b=20;
printf("הערך של a הוא %d והערך של b הוא %d\n", a, b);
return 0;
}
הדפסת מספרי נקודה צפה היא כדלקמן. עיין בדוגמה למטה.
int main(){
float area=20.45;
printf(“Area is % 4.2f”, area);
return 0;
}
ההדפסה של התווים היא כדלקמן.
int main(){
char letter='A';
printf(“אות היא %c”, אות);
return 0;
}
ההדפסה של מחרוזות היא כדלקמן.
int main(){
char word[6]="שלום";
printf(“Word is %s”, word);
return 0;
}
מחרוזת מעוצבת יכולה לכלול גם רצפי בריחה. הם מתחילים עם נטוי אחורי ("\"). חלקם הם \n ו-\t.
int main(){
int a=10, b=20;
printf(“הערך של a הוא %d \n הערך של b הוא %d\n”, a, b);
return 0;
}
זה ידפיס ערכי "a" ו-"b" בשורות נפרדות.
printf(“הערך של a הוא %d \t הערך של b הוא %d\n”, a, b); ייתן רווח או טאב בין הערך של a לערך של b.
כדי להדפיס מרכאות כפולות, המתכנת יכול להשתמש באופן הבא.
printf(“לומד תכנות \“C \”);
מה זה fprintf?
הפונקציה fprinf משמשת לפלט מחרוזת מעוצבת לקובץ. התחביר עבור fprintf הוא כדלקמן;
fprintf(מצביע קובץ, "מפרט פורמט", "רשימת משתנים");
עיין בקוד שלהלן כדי להבין את הפונקציונליות של fprintf ().
include
include
int main(){
FILE ptr;
char name[5]="Ann";
int id=3;
ptr=fopen(“file1.txt”, “w”);
if (ptr==NULL){
printf("לא ניתן לפתוח את הקובץ\n");
}
else{
fprintf(ptr,”%s, %d”, name, id);
printf("הנתונים נכתבו בהצלחה לקובץ");
fclose(ptr);
}
getch();
return 0;
}
"ptr" הוא מצביע לקובץ. הקובץ נפתח במצב כתיבה. אם זה לא נפתח, זה ייתן אי אפשרות לפתוח את שגיאת הקובץ. אם הוא נפתח בהצלחה, המחרוזת המעוצבת מודפסת לקובץ.מצביע הקובץ, מחרוזת מעוצבת ורשימת המשתנים מועברים לפונקציה fprintf. לבסוף, הקובץ נסגר באמצעות fclose(). כדי להוסיף נתונים לקובץ, ניתן לשנות את ההצהרה באופן הבא.
ptr=fopen(“file1.txt”, “a”);
מהו הדמיון בין printf ל-fprintf?
שתיהן פונקציות שמסופקות על ידי שפת C
מה ההבדל בין printf ל-fprintf?
printf לעומת fprintf |
|
printf היא פונקציית C להדפסת מחרוזת מעוצבת לזרם הפלט הסטנדרטי שהוא מסך המחשב. | fprintf היא פונקציית C להדפסת מחרוזת מעוצבת לקובץ. |
תחביר | |
מחרוזת מעוצבת ורשימת הפרמטרים מועברות לפונקציה printf. לְמָשָׁל printf(“format”, args); | מצביע קבצים, מחרוזת מעוצבת ורשימת פרמטרים מועברים לפונקציה fprintf. לְמָשָׁל fprintf(קובץ ptr, "format", args); |
סיכום – printf לעומת fprintf
"printf" ו-"fprintf" הן פונקציות ב-C. המתכנת לא צריך ליישם את הפונקציות האלה מההתחלה. שפת C כבר מספקת אותם. ההבדל בין printf ל-fprintf הוא ש-printf משמש להדפסת מחרוזת מעוצבת לפלט סטנדרטי שהוא רוב הזמן מסך מחשב ו-fprintf משמש להדפסת מחרוזת מעוצבת לקובץ ספציפי. ניתן להשתמש ב-printf וב-fprintf בהתאם למשימה.
הורד את גרסת ה-PDF של printf לעומת fprintf
ניתן להוריד את גרסת ה-PDF של מאמר זה ולהשתמש בה למטרות לא מקוונות לפי הערת ציטוט. אנא הורד כאן גרסת PDF ההבדל בין printf ל-fprintf