Zabezpieczanie int i string przed błędnymi danymi
Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Zarejestruj się!

Zabezpieczanie int i string przed błędnymi danymi

AutorWiadomość
Temat założony przez niniejszego użytkownika
Zabezpieczanie int i string przed błędnymi danymi
» 2018-06-23 22:31:48
Witam, chce zabezpieczyć wprowadzanie liter zamiast liczb do ID_book. Przy obecnym zabezpieczeniu po wpisaniu niecyfry enter musi byc wczytany dwukrotnie. Chcę tez zabezpieczyc string author przed wpisaniem cyfr. Czy obejdzie sie bez konwersji na char i stosowania przedziałów ASCII?

C/C++
int ID_book;
string title, author;

while( !( cin >> ID_book ) )
{
    cout << "You have to enter a number.\nID:";
    cin.clear();
    cin.ignore( numeric_limits < streamsize >::max(), '\n' );
}

fflush;
cin.get();
getline( cin, title );

cout << endl << "Author: ";
getline( cin, author );
P-171660
» 2018-06-24 01:19:32
Przy obecnym zabezpieczeniu po wpisaniu niecyfry enter musi byc wczytany dwukrotnie.
Nie zapomniałeś o wczytywaniu title?

Czy obejdzie sie bez konwersji na char i stosowania przedziałów ASCII?
A co z tym nie tak?
P-171662
Temat założony przez niniejszego użytkownika
» 2018-06-24 10:20:07
Myślę po prostu ze konwersja na char nie jest najbardziej optymalnym sposobem i jestem przekonana ze string tez da sie jakos zabezpieczac ale nie umiem nic w internecie znaleźć co by działało. Chociażby z ciekawości pytam
P-171666
» 2018-06-24 11:47:53
Liczba jest poprawnym napisem. Jeśli dla twoich potrzeb nie jest, musisz to sama sprawdzać.
P-171667
« 1 »
 Strona 1 z 1