Metody korzystania z CIN.get () w c++
Istnieją dwa sposoby używania Cin.Dostawać() Funkcja w C ++:
1: Czytanie pojedynczej postaci za pomocą CIN.get () w c++
W C ++ możesz odczytać i zapisywać określone znaki w buforze wejściowym za pomocą Cin.Dostawać() metoda. Należy do „iostream„Klasa jako funkcja członka. Za pomocą białej i pęknięcia linii funkcja może odczytać pojedynczy znak ze strumienia wejściowego i zapisać go w zmiennej lub tablicy.
Podstawowa składnia dla Cin.Dostawać() Jest:
Cin.Get (char_variable)
To przyjmie jeden znak ze strumienia wejściowego, przeczytaj go, zapisz go, a następnie przypisz do Char_Variable. Możesz użyć go w połączeniu z pętlami i tablicami, aby czytać wiele znaków.
#włączać
za pomocą przestrzeni nazw Std;
int main ()
Nazwa char, nazwa1, name2;
Cout << "Type Name: " << endl;
Cin.Get (Imię);
Cin.Get (Name1);
Cin.Get (Name2);
Cout <<">"<< name<<"\n";
Cout <<">"<< name1<<"\n";
Cout <<">"<< name2<<"\n";
powrót 0;
W powyższym przykładzie tworzymy trzy zmienne: nazwa, name1 i name2 i otrzymujemy dane wejściowe od użytkownika. Cin.get () funkcja jest następnie używany do przyjmowania znaków z strumienia wejściowego jeden po drugim i przypisywaniu ich do zmiennych. Tylko jedna zmienna jest odczytywana przez Cin.Dostawać() funkcja jednocześnie.
Wyjście
2: Czytanie wielu postaci za pomocą CIN.get () w c++
Możesz także użyć Cin.Dostawać() funkcja do odczytu wielu znaków ze strumienia wejściowego. Można to zrobić, określając bufor wejściowy i maksymalną liczbę znaków do odczytania ze strumienia wejściowego.
Podstawowa składnia dla Cin.Dostawać() Aby odczytać wiele znaków w C ++, podano poniżej:
Cin.getline (bufor wejściowy, rozmiar bufora maksymalnego)
Znaki odczytywane w buforze strumienia wejściowego są przechowywane w tablicy o nazwie Bufor wejściowy, a maksymalna liczba znaków, które można odczytać przed zakończeniem procesu odczytu, jest wskazana przez maksymalny rozmiar buforu.
Oto przykład prostego kodu:
#włączać
za pomocą przestrzeni nazw Std;
int main ()
Nazwa char [15];
Cout << "Type Name: " << endl;
Cin.Get (Imię, 15);
Cout << name;
powrót 0;
W powyższym kodzie utworzyliśmy zmienną typu o nazwie. Dodatkowo określono rozmiar tablicy postaci, który w tym przypadku wynosi 15. cout () Następnie funkcja jest używana do stworzenia wiadomości, która żąda użytkownika o podanie nazwy. Nazwa została następnie uzyskana za pomocą Cin.Dostawać() metoda, a długość łańcucha wynosiła 15. W ten sposób wyjście wyświetli również wartość ciągów o rozmiarze 15, gdy drukujemy nazwę zmiennej jako wyjście.
Wyjście
Dlaczego potrzebujemy CIN.get () w c++
cin () Funkcja jest często używana do odczytu danych wejściowych z klawiatury lub standardowego wejścia. Jednak gdy Cin () jest używany do odbierania wprowadzania użytkownika, zatrzymuje się, gdy napotyka znak Whitespace, taki jak Space, Newline lub Tab. Funkcja CIN () może zatem powodować problemy, gdy są używane w bloku kodu, który musi zaakceptować dane wejściowe zawierające białespace.
Ten problem można skutecznie rozwiązać za pomocą CIN.Metoda get (), która pozwala odczytać dane wejściowe do zdefiniowanego ogranicznika, w tym znaków białej cin () Funkcja zwykle pomijałaby. Każda postać, taka jak nowa linia lub konkretny znak określony przez programistę, może służyć jako ten ogranicznik.
Kolejna kluczowa różnica między cin () I Cin.Dostawać() jest to, że ten ostatni nie wyrzuca nowej postaci na końcu linii wejściowej użytkownika. Dlatego zaleca się odczytanie danych za pomocą danych Cin.Dostawać() i getline () metoda razem.
Istnieje ograniczenie z Cin.Dostawać() Funkcja: Może odczytać tylko znaki do nowej postaci lub określonej ilości znaków, w zależności. W rezultacie, jeśli spróbujesz odczytać wiersz tekstu, który jest dłuższy niż pozwala na to bufor, zostanie on obcięty. Użyj getline () Zamiast tego, aby temu zapobiec.
Wniosek
Cin.Dostawać() Funkcja w C ++ służy do odczytu i zapisywania określonych znaków ze strumienia wejściowego. Może odczytać pojedyncze znaki i całe wiersze tekstu i kontynuować przetwarzanie znaków, aż wejście zostanie zakończone. Pomimo pewnych wad, jest to jednak ważna funkcja dla programistów C ++.