Latest web development tutorials

C ++ Basic Input Output

libreria standard C ++ fornisce un ricco set di funzioni di input / output, ci saranno descritte nei capitoli successivi. Questo capitolo descrive la programmazione C ++, il operazioni di I / O più fondamentale e comune.

Il C ++ I / O si verifica nel flusso, il flusso è una sequenza di byte. Se il flusso di byte scorre dal dispositivo (ad esempio una tastiera, dischi, connessioni di rete, ecc) Memoria, che è chiamataoperazione di input.Se il flusso di byte che scorre dai dispositivi di memoria (come monitor, stampanti, unità disco, le connessioni di rete, ecc), che si chiamal'operazione di uscita.

I file di libreria I / O di intestazione

I seguenti file di intestazione sono importanti nella programmazione C ++.

头文件函数和描述
<iostream>该文件定义了cin、cout、cerrclog对象,分别对应于标准输入流、标准输出流、非缓冲标准错误流和缓冲标准错误流。
<iomanip>该文件通过所谓的参数化的流操纵器(比如setwsetprecision),来声明对执行标准化 I/O 有用的服务。
<fstream>该文件为用户控制的文件处理声明服务。我们将在文件和流的相关章节讨论它的细节。

Il flusso di output standard (cout)

Predefiniti oggettocout è un'istanza della classe ostream.oggetto cout è "collegato" al dispositivo di output standard, di solito il display.cout << operatore viene utilizzato in combinazione con l'inserimento flusso come segue:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char str[] = "Hello C++";
 
   cout << "Value of str is : " << str << endl;
}

Quando il codice di cui sopra è compilato ed eseguito, produce i seguenti risultati:

Value of str is : Hello C++

C ++ compilatore base al tipo di dati da grandezza di uscita per selezionare l'operatore di inserimento flusso appropriata per visualizzare il valore. << Operatore è sovraccarico per l'emissione del tipo built-in (integer, float, double, string, e il puntatore) articoli.

operatore di inserimento Flusso << può essere utilizzato più volte in un'istruzione, come mostrato negliesempi precedenti, endl per la fine della linea per aggiungere un'interruzione di riga.

flusso di input standard (CIN)

oggetti predefinitiCIN istreamè un'istanza della classe. oggetto cin è affiliato al dispositivo di input standard, di solito la tastiera. Estrazionecin è operatore flusso >> usato in combinazione, come segue:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char name[50];
 
   cout << "请输入您的名称: ";
   cin >> name;
   cout << "您的名称是: " << name << endl;
 
}

Quando il codice di cui sopra è compilato ed eseguito, viene richiesto all'utente di inserire un nome. Quando l'utente immette un valore e premere il tasto Invio, vedrete i seguenti risultati:

请输入您的名称: cplusplus
您的名称是: cplusplus

C ++ in base al tipo di valore di input dei dati, selezionare l'operatore di estrazione flusso adeguato di estrarre valore, e lo memorizza in una data variabile.

Flusso di estrazione operatore >> può essere utilizzato più volte in una dichiarazione, se una pluralità di requisiti di input dei dati, è possibile utilizzare la seguente dichiarazione:

cin >> name >> age;

Ciò equivale a due seguenti affermazioni:

cin >> name;
cin >> age;

flusso di errore standard (cerr)

Predefiniti oggettoostream cerrè un'istanza della classe. oggetto cerr è affiliato al dispositivo di errore standard, di solito il display, ma l'oggetto ècerr non tamponata,e ogni cerr flusso viene immediatamente inserito nella uscita.

cerr streaming anche operatore di inserimento << e usato in combinazione, come segue:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char str[] = "Unable to read....";
 
   cerr << "Error message : " << str << endl;
}

Quando il codice di cui sopra è compilato ed eseguito, produce i seguenti risultati:

Error message : Unable to read....

flusso di registrazione standard (zoccolo)

oggetti predefinitizoccolo è un'istanza della classe ostream.intasare oggetti affiliate al dispositivo di errore standard, di solito il display, ma l'oggetto è tamponatointasare.Ciò significa che ogni getto verso lo zoccolo verrà memorizzato nel buffer finché il buffer è pieno, o solo quando il buffer d'uscita viene svuotata.

ancheintasare l'operatore di inserimento flusso << usato in combinazione, come segue:

#include <iostream>
 
using namespace std;
 
int main( )
{
   char str[] = "Unable to read....";
 
   clog << "Error message : " << str << endl;
}

Quando il codice di cui sopra è compilato ed eseguito, produce i seguenti risultati:

Error message : Unable to read....

Attraverso questi piccoli esempi, non possiamo distinguere cout, cerr e intasare la differenza, ma la preparazione e la realizzazione di programmi di grandi dimensioni, la differenza tra loro diventa molto evidente. Così buona pratica di programmazione ci dice che l'uso corrente cerr per visualizzare un messaggio di errore, mentre altri usano i messaggi di log intasano uscita flusso.