Latest web development tutorials

C ++ Podstawowe Input Output

C ++ Standardowa biblioteka zapewnia bogaty zestaw funkcji wejścia / wyjścia, będziemy opisane w kolejnych rozdziałach. Ten rozdział omawia C ++ programowanie, najbardziej podstawowe i najczęstsze operacje We / Wy.

C ++ I / O następuje w strumieniu strumień jest sekwencja bajtów. Jeśli strumień bajtów płynie od urządzenia (takie jak klawiatura, napędy dyskowe połączeń sieciowych, etc.) pamięci, który nazywany jestoperacja wprowadzania.Jeśli strumień bajtów płynących z urządzeń pamięci (takich jak monitory, drukarki, napędy dyskowe, połączeń sieciowych, etc.), które nazywa sięoperacja wyjścia.

We / Wy pliki nagłówkowe biblioteki

Poniższe pliki nagłówkowe są ważne w programowaniu C ++.

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

Standardowy strumień wyjściowy (cout)

Predefiniowane Obiektcout jest instancją klasy ostream.Obiekt cout jest "podłączony" do standardowego urządzenia wyjściowego, zazwyczaj na wyświetlaczu.Cout << operatora jest stosowane w połączeniu z wprowadzania strumieni w następujący sposób:

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

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Value of str is : Hello C++

Kompilator C ++ w zależności od typu danych, które mają być zmienna wyjściowa i wybrać odpowiedni strumień operator wstawiania do wyświetlania wartości. << Operator jest przeciążony do wyjścia wbudowanego elementów typu (całkowitej, float, double, string i wskaźnik).

Operator wprowadzenie strumienia << mogą być stosowane wielokrotnie w komunikacie, jak pokazano w powyższychprzykładach endl na końcu linii dodać na końcu linii.

Standardowy strumień wejściowy (CIN)

Predefiniowane obiektycin istreamjest instancją klasy. Obiekt cin jest związany ze standardowym urządzeniem wejściowym, zwykle klawiaturze. Ekstrakcja strumieniacin jest operator >> stosowany w połączeniu z innymi, co następuje:

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

Jeżeli powyższy kod jest kompilowany i uruchamiany, prosi użytkownika o wprowadzenie nazwy. Gdy użytkownik wprowadzi wartość i naciśnij klawisz Enter, pojawi się następujące wyniki:

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

Kompilator C ++ w oparciu o typ wartości danych wejściowych, wybierz odpowiedni operator ekstrakcji strumień wyodrębnić wartość i przechowuje je w danej zmiennej.

Strumień operator ekstrakcji >> może być używany wielokrotnie w oświadczeniu, jeżeli wiele wymagań wejściowych danych, można użyć następujące oświadczenie:

cin >> name >> age;

Jest to odpowiednik dwóch następujących stwierdzeń:

cin >> name;
cin >> age;

Standardowy strumień błędów (cerr)

Predefiniowane obiektuostream cerrjest instancją klasy. cerr obiekt jest związany ze standardowym urządzeniem błędu, zazwyczaj na wyświetlaczu, ale obiekt nie jest buforowanecerr, a każdy cerr strumień jest natychmiast wprowadzony do produkcji.

cerr strumieniowo również operator wstawiania << i stosowany w połączeniu z innymi, co następuje:

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

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Error message : Unable to read....

Standardowy strumień log (skleić)

Predefiniowane obiektyskleić jest instancją klasy ostream.zatkać obiektów powiązanych ze standardowym urządzeniem błędu, zazwyczaj na wyświetlaczu, ale obiekt jest buforowanyskleić.Oznacza to, że każdy strumień do zatkania będą przechowywane w buforze, aż bufor wypełnia lub tylko wtedy, gdy bufor jest opróżniany.

równieżzatkać operatora strumienia wstawiania << stosowany w połączeniu z innymi, co następuje:

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

Gdy powyższy kod jest kompilowany i wykonany, że daje następujące wyniki:

Error message : Unable to read....

Poprzez te małe przykłady, nie możemy odróżnić cout, cerr i zatkać różnicę, ale w przygotowaniu i realizacji dużych programów, różnica między nimi staje się bardzo widoczne. Dlatego dobrą praktyką programowania mówi nam, że strumień wykorzystanie cerr do wyświetlenia komunikatu o błędzie, podczas gdy inni używają wiadomości dziennika zatkać wyjście strumienia.