Cerr C++ דוגמאות

Cerr C Dwgm Wt



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

דוגמה 1:

ה-'iostream' הוא קובץ הכותרת הכלול כאן שהצבנו כדי שנוכל להשתמש בשיטות 'cin' או 'cout' בקוד שלנו, שכן שתי השיטות מוצהרות בתוכו. האובייקט 'cerr' מוצהר גם בקובץ הכותרות הזה. לאחר מכן, יש לנו את 'מרחב השמות STD'. כעת, איננו צריכים להוסיף את ה-'std' הזה עם כל פונקציה בנפרד.

לאחר מכן, 'main()' מופעל כאן. מתחת לזה, אנו משתמשים באובייקט 'cerr' וממקמים את הודעת השגיאה שברצוננו להציג בקונסולה. אנו מקלידים את ההודעה 'אירעה שגיאה כאן!' הודעה ב-'cerr' זה לאחר הצבת סמלי ההכנסה. כאשר אנו מפעילים תוכנית זו, ההודעה הנתונה מוצגת ללא שימוש ב-'cout'.







קוד 1:

#include

באמצעות מרחב שמות std ;

int רָאשִׁי ( ) {

cerr << 'התרחשה כאן שגיאה!' << endl ;

לַחֲזוֹר 0 ;

}

תְפוּקָה:



ההודעה שאנו מקלידים לאחר הצבת 'cerr <<' מוצגת כעת בתוצאה זו המוצגת בהודעה הבאה:







דוגמה 2:

מכיוון שגם שיטות 'cin' ו-'cout' כמו גם 'cerr' מוצהרות בתוך קובץ הכותרת 'iostream', אנו מוסיפים את קובץ ה-header כאן כדי שנוכל להשתמש בהם בקוד שלנו. לאחר מכן, יש לנו את 'מרחב השמות STD'. מתחת לזה נקרא ה-'main()'. אנו מאתחלים את 'error_str[]' של סוג הנתונים 'מחרוזת' ומקצים הודעה ל-'error_str[]'. לאחר מכן, אנו משתמשים באובייקט 'cerr' שבו אנו מניחים את הודעת השגיאה ומעבירים את ה-'error_str' הזה. לכן, כאשר אנו מפעילים את התוכנית הזו, היא מציגה את שתי ההודעות.

קוד 2:

#include

באמצעות מרחב שמות std ;

int רָאשִׁי ( ) {

לְהַשְׁחִיר error_str [ ] = 'אנחנו לא יכולים לקרוא את המחרוזת כאן!' ;

cerr << 'התרחשה שגיאה:' << error_str << endl ;

}

תְפוּקָה:



הטקסט שאנו מקלידים לאחר הקלדת 'cerr <<' נראה כעת בתוצאה, כמו גם ההודעה שהוספנו ב-'error_str'. התוצאה מוצגת גם בקטע הבא:

דוגמה 3:

לאחר הכללת קובץ הכותרת ולאחר מכן הצבת מרחב השמות 'std', אנו קוראים לשיטת 'main()'. לאחר מכן, משתנה המספר השלם 'NumOfLine' מוצהר כאן ומאוחל עם '__LINE__'. '__LINE__' זה יוצר את הודעות השגיאה. מתחת לזה, אנו משתמשים באובייקט 'cerr' וממקמים את הודעת השגיאה שברצוננו להציג למשתמש. אנו גם מניחים את המשתנה 'NumOfLine' המציג את מספר השורה עליו מתרחשת השגיאה בקוד.

קוד 3:

#include

באמצעות מרחב שמות std ;

int רָאשִׁי ( ) {

int NumOfLine = __קַו__ ;

cerr << 'אירעה שגיאה כאן על הקו:' << NumOfLine ;

לַחֲזוֹר 0 ;

}

תְפוּקָה:

כאן, זה מראה שהשגיאה מתרחשת בשורה '4' כאשר הוספנו את '__LINE__' בשורה הרביעית של הקוד. הודעה זו מוצגת כאן בעזרת האובייקט 'cerr' ב-C++.

דוגמה 4:

אנו כוללים קובץ כותרת נוסף אחד, 'fstream'. קובץ הכותרת 'fstream' הזה משמש ב-C++ כדי לקרוא, לכתוב או ליצור קובץ מכיוון שהוא השילוב של 'ofstream' כמו גם 'ifstream'. כעת, לאחר הוספת 'מרחב שמות' והפעלת 'main()', אנו משתמשים ב-'fstream' עם המשתנה 'new_file'.

לאחר מכן, אנו משתמשים בפונקציה 'open()' כאן עם ה-'new_file' ומעבירים את שם הקובץ כפרמטר. שם הקובץ הוא 'myTextFile.txt' אותו אנו רוצים לפתוח. מתחת לזה, אנו משתמשים ב-'if' כדי להעביר את המשתנה 'new_file'. כעת, אם הקובץ נפתח כאן, ההצהרה לאחר 'אם' מוצגת. אחרת, ההצהרה לאחר 'else' מוצגת במקום בו אנו מוסיפים את האובייקט 'cerr' כדי להציג הודעת שגיאה.

קוד 4:

#include

#include

באמצעות מרחב שמות std ;

int רָאשִׁי ( ) {

fstream new_file ;

קובץ חדש. לִפְתוֹחַ ( 'myTextFile.txt' ) ;

אם ( קובץ חדש ) {

cout << 'הקובץ נפתח בהצלחה כאן!' ;

}

אַחֵר {

cerr << 'אירעה כאן שגיאה בעת פתיחת הקובץ כאן!' ;

}

לַחֲזוֹר 0 ;

}

תְפוּקָה:

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

דוגמה 5:

כאן, אנו רוצים לפתוח קובץ נוסף. לכן, אנו מוסיפים גם קבצי כותרות וגם מרחב השמות 'std'. כעת, אנו קוראים ל-'main()'ולאחר מכן משתמשים ב-'fstream' עם המשתנה 't_file'. לאחר מכן, אנו משתמשים בפונקציה 'open()' במקרה זה עם ה-'new_file' ומספקים את שם הקובץ כארגומנט. הקובץ שברצוננו לפתוח נקרא 'New.txt'. אנו משתמשים במשפט 'if', ומעבירים את המשתנה 't_file'. כעת, אם הקובץ נפתח, השורה שאחריה 'אם' מוצגת. אם לא, ההצהרה שאחרי 'else', שבה הוספנו את האובייקט 'cerr' כדי להציג הודעת שגיאה, תוצג.

קוד 5:

#include

#include

באמצעות מרחב שמות std ;

int רָאשִׁי ( ) {

fstream t_file ;

t_file. לִפְתוֹחַ ( 'New.txt' ) ;

אם ( t_file ) {

cout << 'הקובץ נפתח כאן!' ;

}

אַחֵר {

cerr << 'התרחשה שגיאה!' ;

}

לַחֲזוֹר 0 ;

}

תְפוּקָה:

לא ניתן לפתוח את הקובץ שסיפקנו. אז הודעת השגיאה שהוספנו אחרי האובייקט 'cerr' מוצגת בקטע הבא:

דוגמה 6:

אנו מוסיפים כאן קובץ כותרת 'חריג' המשמש לבדיקת שגיאות שעלולות להתרחש בקוד שלנו. בהמשך, אנו מאתחלים מערך מסוג מספר שלם בשם 'new_array' בגודל '6'. לאחר מכן, אנו מגדירים את 'new_index' של המשתנה 'int' ומקצים כאן '7'. כעת, אנו מאתחלים גם את המשתנה 'new_size' ומקצים '*(&new_arr + 1) – new_arr' למשתנה 'new_size'.

לאחר מכן, אנו משתמשים ב'נסה', 'זרוק' ו'לתפוס' המשמשים לבדיקת השגיאות ולזרוק הודעת השגיאה. אנו משתמשים באובייקט 'צבע' המציג את הודעת השגיאה שהוספנו לאחר מילת המפתח 'זרוק'.

קוד 6:

#include

#include <חריגה>

באמצעות מרחב שמות std ;

int רָאשִׁי ( ) {



int new_arr [ 6 ] = { 1 , 9 , 4 , 3 , 8 , 7 } ;

int new_index = 7 ;



int new_size = * ( & new_arr + 1 ) - new_arr ;

לְנַסוֹת {

אם ( new_index < 0 || new_index >= new_size ) לזרוק ( 'המדד אינו בטווח. הוא מחוץ לטווח כאן' ) ;



אַחֵר

cout << new_arr [ new_index ] ;



}

לתפוס ( const לְהַשְׁחִיר * לִטְעוֹת ) {

cerr << לִטְעוֹת ;

}

לַחֲזוֹר 0 ;

}

תְפוּקָה:

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

דוגמה 7:

כאן, אנו בודקים שגיאה שעלולה להתרחש כאשר אנו מחלקים מספר באפס. אנו יוצרים פונקציה 'd()' שבה נעביר שני משתנים מסוג הנתונים 'int' מסוג 'a1' ו-'a2'. מתחת לזה, נוסיף 'אם' שבו נעביר את התנאי 'a2==0'. אם הערך של 'a2' הוא אפס, ההודעה שאנו מציבים לאחר ה-'throw' מבוצעת, אותה אנו מקבלים על ידי הצבת האובייקט 'cerr' בקוד.

לאחר מכן, אנו מניחים את ה'תשואה' שמחזירה את תשובת החלוקה אם הערך של 'a2' אינו אפס. כעת, אנו מפעילים את ה-'main()' ומקצים את '87' ל-'x' לאחר האתחול שלו כמשתנה 'int'. לאחר מכן, אנו מאתחלים גם את המשתנים 'b' ו-'d_res' עם '0'. כאן, אנו מניחים את ה-'try' ו-'catch' אשר תופסים את השגיאה וה-'cerr' זורק את הודעת השגיאה שהוספנו לאחר מילת המפתח 'זרוק'.

קוד 7:

#include

באמצעות מרחב שמות std ;

int שלי_חטיבה ( int a1 , int a2 ) {

אם ( a2 == 0 ) {

לזרוק 'חלוקה באפס אינה אפשרית!' ;

}

לַחֲזוֹר ( a1 / a2 ) ;

}

int רָאשִׁי ( ) {

int איקס = 87 ;

int ו = 0 ;

int d_כלום = 0 ;

לְנַסוֹת {

d_כלום = שלי_חטיבה ( איקס , ו ) ;

cout << d_כלום << endl ;

} לתפוס ( const לְהַשְׁחִיר * הודעה ) {

cerr << הודעה << endl ;

}

לַחֲזוֹר 0 ;

}

תְפוּקָה:

כאן מופיעה הודעת השגיאה שמשמעותה שאנו רוצים לחלק את המספר ב- '0' וזה בלתי אפשרי.

סיכום

האובייקט 'cerr' נחקר כאן בפירוט. הגדרנו כיצד האובייקט 'cerr' מסייע בהצגת הודעת השגיאה בתכנות C++. בדקנו מספר דוגמאות שבהן הצבנו תנאים רבים שבהם מתרחשת השגיאה. השתמשנו גם באובייקט 'cerr' לאחר הצבת שיטת try-catch ובקוד פתיחת הקובץ. הצגנו את הקוד כמו גם את התוצאה שבה ה-'cerr' מציג הודעת שגיאה.