ę programowania w C++. Wejście standardowe pozwala użytkownikowi na interakcję z programem poprzez wprowadzanie danych, które program może następnie przetwarzać. W C++, biblioteka
<iostream>
udostępnia narzędzia do obsługi wejścia (i wyjścia) danych, w tym obiekty
cin
(do wczytywania danych) oraz
cout
(do wypisywania danych).
Podstawy Wczytywania Danych z Wejścia
cin
jest obiektem predefiniowanym w C++, który reprezentuje wejście standardowe. Używa się go do wczytywania danych wprowadzonych przez użytkownika.
Podstawowe Użycie cin
Aby wczytać dane z wejścia, używamy operatora
>>
wraz z obiektem
cin
, a następnie podajemy zmienną, do której chcemy wczytać dane. Typ zmiennej musi być zgodny z typem danych, które użytkownik ma zamiar wprowadzić.
Przykład 1: Wczytywanie liczby całkowitej
#include <iostream>
using namespace std;
int main() {
int liczba;
cout << "Wprowadź liczbę: ";
cin >> liczba;
cout << "Wprowadzona liczba to: " << liczba << endl;
return 0;
}
Wczytywanie Wielu Danych
cin
może być używany do wczytywania wielu danych jedna po drugiej, korzystając z tej samej lub różnych zmiennych.
Przykład 2: Wczytywanie wielu danych różnego typu
#include <iostream>
using namespace std;
int main() {
int wiek;
double wzrost;
cout << "Wprowadź swój wiek i wzrost: ";
cin >> wiek >> wzrost;
cout << "Wiek: " << wiek << ", wzrost: " << wzrost << " cm" << endl;
return 0;
}
Obsługa Błędów Wczytywania
W przypadku, gdy typ danych wprowadzony przez użytkownika nie zgadza się z typem zmiennej, do której dane są wczytywane,
cin
wpada w stan błędu, co może prowadzić do pomijania kolejnych operacji wczytywania. Aby temu zapobiec, warto sprawdzać stan
cin
i ewentualnie czyścić flagi błędu oraz bufor wejściowy.
Przykład 3: Obsługa błędów
#include <iostream>
using namespace std;
int main() {
int liczba;
cout << "Wprowadź liczbę: ";
if (!(cin >> liczba)) {
cout << "To nie jest liczba!" << endl;
// Czyszczenie flag błędu
cin.clear();
// Pomijanie pozostałych danych w buforze
cin.ignore(numeric_limits<streamsize>::max(), '\n');
} else {
cout << "Wprowadzona liczba to: " << liczba << endl;
}
return 0;
}
Wczytywanie Tekstu
Do wczytywania tekstu, w tym ciągów znaków ze spacjami, używa się funkcji
getline()
.
Przykład 4: Wczytywanie linii tekstu
#include <iostream>
#include <string>
using namespace std;
int main() {
string liniaTekstu;
cout << "Wprowadź tekst: ";
getline(cin, liniaTekstu);
cout << "Wprowadzony tekst to: " << liniaTekstu << endl;
return 0;
}