Esimerkki 1:
'iostream' on tässä mukana oleva otsikkotiedosto, jonka sijoitimme, jotta voimme käyttää 'cin'- tai 'cout'-menetelmiä koodissamme, koska molemmat menetelmät on ilmoitettu sen sisällä. 'Cerr'-objekti on myös ilmoitettu tässä otsikkotiedostossa. Sitten meillä on 'std-nimiavaruus'. Nyt meidän ei tarvitse lisätä tätä 'std' jokaiseen toimintoon erikseen.
Sitten 'main()' kutsutaan tässä. Tämän alapuolella hyödynnämme 'cerr' -objektia ja asetamme virheilmoituksen, jonka haluamme näyttää konsoliin. Kirjoitamme 'Täällä tapahtui virhe!' viesti tähän 'cerr'-kenttään lisäyssymbolien sijoittamisen jälkeen. Kun suoritamme tämän ohjelman, annettu viesti näytetään ilman 'cout' -näppäintä.
Koodi 1:
#includekäyttäen nimiavaruutta std ;
int pää ( ) {
cerr << 'Täällä tapahtui virhe!' << endl ;
palata 0 ;
}
Lähtö:
Viesti, jonka kirjoitamme sen jälkeen, kun kirjoitamme 'cerr <<', näytetään nyt tässä tuloksessa, joka näkyy seuraavassa:
Esimerkki 2:
Koska sekä 'cin'- ja 'cout'-menetelmät kuin 'cerr' on ilmoitettu 'iostream'-otsikkotiedoston sisällä, lisäämme otsikkotiedoston tähän, jotta voimme käyttää niitä koodissamme. Sen jälkeen meillä on 'std-nimiavaruus'. Tämän alapuolella 'main()' kutsutaan sitten. Alustamme 'merkkijono'-tietotyypin 'error_str[]' ja määritämme viestin 'error_str[]'. Sitten käytämme 'cerr' -objektia, johon asetamme virheilmoituksen ja välitämme tämän 'error_str'. Joten kun suoritamme tämän ohjelman, se näyttää molemmat viestit.
Koodi 2:
#includekäyttäen nimiavaruutta std ;
int pää ( ) {
hiiltyä error_str [ ] = 'Emme voi lukea merkkijonoa täällä!' ;
cerr << 'Tapahtui virhe : ' << error_str << endl ;
}
Lähtö:
Teksti, jonka kirjoitamme kirjoittamisen jälkeen 'cerr <<', näkyy nyt tuloksessa sekä viesti, jonka lisäsimme 'error_str'. Tulos näkyy myös seuraavassa:
Esimerkki 3:
Kun olet sisällyttänyt otsikkotiedoston ja sijoittanut sitten 'std'-nimitilan, kutsumme 'main()'-menetelmää. Tämän jälkeen 'NumOfLine' kokonaislukumuuttuja ilmoitetaan tässä ja alustetaan '__LINE__'. Tämä '__LINE__' luo virheilmoitukset. Tämän alapuolella käytämme 'cerr' -objektia ja asetamme virheilmoituksen, jonka haluamme näyttää käyttäjälle. Sijoitamme myös 'NumOfLine'-muuttujan, joka näyttää rivinumeron, jolla virhe esiintyy koodissa.
Koodi 3:
#includekäyttäen nimiavaruutta std ;
int pää ( ) {
int NumOfLine = __LINJA__ ;
cerr << 'Täällä linjalla tapahtui virhe:' << NumOfLine ;
palata 0 ;
}
Lähtö:
Tässä näkyy, että virhe tapahtuu rivillä '4', kun lisäsimme '__LINE__' koodin neljännelle riville. Tämä viesti näytetään täällä C++:n “cerr”-objektin avulla.
Esimerkki 4:
Lisäämme vielä yhden otsikkotiedoston, 'fstream'. Tätä 'fstream'-otsikkotiedostoa käytetään C++:ssa tiedoston lukemiseen, kirjoittamiseen tai luomiseen, koska se on 'ofstream'- ja 'ifstream'-komentojen yhdistelmä. Nyt, kun on lisätty 'std namespace' ja kutsuttu 'main()', käytämme 'fstream' -muuttujaa 'new_file'.
Sitten käytämme tässä 'open()'-funktiota 'new_file' kanssa ja annamme tiedoston nimen parametriksi. Tiedoston nimi on 'myTextFile.txt', jonka haluamme avata. Tämän alapuolella käytämme 'if'-funktiota 'new_file'-muuttujan välittämiseen. Nyt, jos tiedosto avautuu tähän, 'if':n jälkeinen lauseke renderöidään. Muussa tapauksessa 'else':n jälkeen oleva lauseke hahmonnetaan, kun lisäämme 'cerr'-objektin näyttämään virheilmoituksen.
Koodi 4:
#include#include
käyttäen nimiavaruutta std ;
int pää ( ) {
fstream uusi_tiedosto ;
uusi_tiedosto. avata ( 'omaTekstitiedosto.txt' ) ;
jos ( uusi_tiedosto ) {
cout << 'Tiedosto on avattu onnistuneesti täällä!' ;
}
muu {
cerr << 'Tässä tapahtui virhe avattaessa tiedostoa täältä!' ;
}
palata 0 ;
}
Lähtö:
Emme voi avata aiemmin toimittamaamme tiedostoa. Täällä se näyttää virheilmoituksen, jonka lisäsimme 'cerr' -objektin jälkeen.
Esimerkki 5:
Tässä haluamme avata toisen tiedoston. Joten lisäämme sekä otsikkotiedostot että 'std'-nimiavaruuden. Nyt kutsumme 'main()' ja käytämme sitten 'fstream' -muuttujaa 't_file'. Seuraavaksi käytämme tässä tapauksessa 'open()'-funktiota 'new_file' -tiedoston kanssa ja annamme tiedoston nimen argumenttina. Tiedosto, jonka haluamme avata, on nimeltään 'New.txt'. Käytämme 'if'-lausetta välittäen 't_file'-muuttujan. Nyt, jos tiedosto avautuu, 'jos'-merkkiä seuraava rivi renderöidään. Jos ei, 'else'-lausetta seuraava lauseke, johon lisäsimme 'cerr'-objektin virheilmoituksen näyttämiseksi, hahmonnetaan.
Koodi 5:
#include#include
käyttäen nimiavaruutta std ;
int pää ( ) {
fstream t_file ;
t_file. avata ( 'Uusi.txt' ) ;
jos ( t_file ) {
cout << 'Tiedosto on avattu täällä!' ;
}
muu {
cerr << 'Tapahtui virhe!' ;
}
palata 0 ;
}
Lähtö:
Antamaamme tiedostoa ei voi avata. Joten virheilmoitus, jonka lisäsimme 'cerr' -objektin jälkeen, näkyy seuraavassa:
Esimerkki 6:
Lisäämme tähän 'poikkeus'-otsikkotiedoston, jota käytetään tarkistamaan koodissamme mahdollisesti esiintyviä virheitä. Seuraavassa alustamme kokonaislukutyyppisen taulukon nimeltä 'new_array', jonka koko on '6'. Sitten asetamme 'int'-muuttujan 'new_index' ja määritämme '7' tähän. Nyt alustamme myös 'new_size'-muuttujan ja määritämme '*(&new_arr + 1) – new_arr' 'new_size'-muuttujaan.
Tämän jälkeen hyödynnämme 'kokeile', 'heittä' ja 'saappaa', joita käytetään virheiden tarkistamiseen ja virheilmoituksen lähettämiseen. Käytämme 'väri' -objektia, joka näyttää virheilmoituksen, jonka lisäsimme 'heittä'-avainsanan jälkeen.
Koodi 6:
#include#sisällytä
käyttäen nimiavaruutta std ;
int pää ( ) {
int new_arr [ 6 ] = { 1 , 9 , 4 , 3 , 8 , 7 } ;
int uusi_indeksi = 7 ;
int uusi_koko = * ( & new_arr + 1 ) - new_arr ;
yrittää {
jos ( uusi_indeksi < 0 || uusi_indeksi >= uusi_koko ) heittää ( 'Indeksi ei ole vaihteluvälillä. Se on tässä vaihteluvälin ulkopuolella' ) ;
muu
cout << new_arr [ uusi_indeksi ] ;
}
ottaa kiinni ( konst hiiltyä * err ) {
cerr << err ;
}
palata 0 ;
}
Lähtö:
Täällä se tuottaa virheilmoituksen, joka osoittaa, että 'Indeksi' on alueen ulkopuolella, ja saamme tämän virheen käyttämällä 'cerr' -objektia.
Esimerkki 7:
Tässä tarkistamme virheen, joka voi tapahtua, kun jaamme luvun nollalla. Luomme 'd()'-funktion, jossa välitämme kaksi muuttujaa 'int' tietotyyppiä 'a1' ja 'a2'. Tämän alle lisäämme 'jos', jossa ohitamme ehdon 'a2==0'. Jos 'a2':n arvo on nolla, suoritetaan 'heiton' jälkeen asettamamme viesti, jonka saamme sijoittamalla 'cerr'-objektin koodiin.
Tämän jälkeen asetetaan 'return', joka palauttaa jaon vastauksen, jos 'a2' ei ole nolla. Nyt kutsumme 'main()':n ja annamme '87':lle 'x', kun se on alustettu 'int'-muuttujaksi. Tämän jälkeen alustamme myös muuttujat 'b' ja 'd_res' arvolla '0'. Täällä asetamme 'try' ja 'catch', jotka havaitsevat virheen, ja 'cerr' heittää virheilmoituksen, jonka lisäsimme 'heittä'-avainsanan jälkeen.
Koodi 7:
#includekäyttäen nimiavaruutta std ;
int minun_jaostoni ( int a1 , int a2 ) {
jos ( a2 == 0 ) {
heittää 'Nollalla jako ei ole mahdollista!' ;
}
palata ( a1 / a2 ) ;
}
int pää ( ) {
int x = 87 ;
int ja = 0 ;
int d_ei mitään = 0 ;
yrittää {
d_ei mitään = minun_jaostoni ( x , ja ) ;
cout << d_ei mitään << endl ;
} ottaa kiinni ( konst hiiltyä * viesti ) {
cerr << viesti << endl ;
}
palata 0 ;
}
Lähtö:
Tässä tulee virheilmoitus, mikä tarkoittaa, että haluamme jakaa luvun '0':lla, mikä on mahdotonta.
Johtopäätös
'Cerr'-objektia tutkitaan yksityiskohtaisesti täällä. Määritimme kuinka 'cerr' -objekti auttaa virheilmoituksen näyttämisessä C++-ohjelmoinnissa. Tutkimme useita esimerkkejä, joissa asetimme monia ehtoja, joissa virhe ilmenee. Käytimme myös 'cerr' -objektia try-catch-menetelmän sijoittamisen jälkeen ja tiedoston avauskoodissa. Näimme koodin sekä tuloksen, jossa 'cerr' näyttää virheilmoituksen.