Kezdőoldal » Számítástechnika » Programozás » Mi a különbség C++-ban aközött...

Mi a különbség C++-ban aközött ha cout-tal íratunk ki egy hibaüzenetet, vagy ha cerr-rel?

Figyelt kérdés
Végeredményben mindkettő ugyanúgy a parancssorba lesz írva, nem?

#C++ #cerr
2017. ápr. 9. 06:26
 1/4 tabaki ***** válasza:
Nem értek hozzá, de feltételezem, hogy az egyik a standard kimenetre, a másik a hibacsatornára küldi az üzenetet. Az semmit sem jelent, ha alaphelyzetben mindkettő a konzolban jelenik meg. Gondolom, meg tudod adni, hogy ehelyett például fájlba vagy nyomtatóra írjon, akkor mindjárt nem muszáj azonosnak lennie a kimenetnek.
2017. ápr. 9. 07:13
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:
Szétválogathatóság miatt. Mehet az egyik a képernyőre, a másik fájlba, és nem lesz azonos a kettő. Vagy két külön fájlba.
2017. ápr. 9. 08:36
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
100%
Nem egészen. A cerr-t nem csak az elkülöníthetőség miatt szokás használni, hanem mert az nem bufferelt. Így pl ha cout-ra írsz, akkor addig nem látod a kimenetet, amég a buffert nem üríti, cerr-re pedig azonnal. Hibaüzenet közlésekor ez előny. Pl ha stdout-ra írnád a hibaüzit, a progi hibára fut, várakozik, de mivel a hibaüzenet bufferben van, ami még nem ürült, nem látod. Viszont stderr-re írva egybő látod.
2017. ápr. 9. 09:48
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:

Mondjuk ha csak ennyi lenne, akkor outputra is írhatnád flush()-al vagy std::endl-al.

Szóval inkább mindkettő.

2017. ápr. 15. 12:53
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!