C ++ cerr - C ++ Standard Library

Het cerr-object in C ++ is een object van klasse ostream. Het wordt geassocieerd met de standaard C-foutuitvoerstroom stderr.

cerr verklaring

 externe ostream cerr;

Het wordt gedefinieerd in header-bestand "> header-bestand.

Het cerrobject wordt geïnitialiseerd tijdens of vóór de eerste keer dat een object van het type ios_base::Initwordt geconstrueerd. Nadat het cerrobject is geconstrueerd, is de uitdrukking ( cerr.flags& unitbuf) niet nul, wat betekent dat alle uitvoer die naar deze stream-objecten wordt verzonden, onmiddellijk naar het besturingssysteem wordt doorgespoeld. Ook cerr.tie()== &coutie cerr.tie()retourneert &coutwat betekent dat cout.flush()wordt uitgevoerd vóór elke uitvoerbewerking op cerr.

De "c" in cerrverwijst naar "karakter" en "err" betekent "fout", dus cerr"tekenfout".

Het cerrobject wordt samen met de invoegoperator (<<) gebruikt om een ​​stroom tekens weer te geven. De algemene syntaxis is:

 cerr << varName;

of

 cerr << "Some String";

De extractie-operator kan meerdere keren worden gebruikt met een combinatie van variabelen, strings en manipulators (zoals endl):

 cerr << var1 << "Some String" << var2 << endl;

Beginnende C ++ -programmeurs gebruiken coutom de fout weer te geven met behulp van standaarduitvoer om hun programma's te debuggen, maar het is altijd een goede gewoonte om cerrfouten weer te geven.

Dit komt doordat u in plaats van de foutenstroom op het scherm weer te geven, later de foutenstroom kunt wijzigen om de fouten naar een bestand te schrijven.

Voorbeeld: hoe werkt cerr?

 #include #include using namespace std; int main() ( char fileName() = "data.txt"; ifstream infile(fileName); if(infile) cout << infile.rdbuf(); else cerr << "Error while opening the file " << fileName < 

When you run the program, the output will be: (if the file could not be opened)

 Error while opening the file data.txt 

Interessante artikelen...