Avatar billede skeleton Nybegynder
02. september 2002 - 13:29 Der er 2 kommentarer og
1 løsning

undgå crash, ved indtastning af tal.

Hej

Jeg kan ikke lige gennemskue dette problem.

int tal;
cin >> tal;

Hvis der indtastes et bogstav crasher prog. Hvordan kan man begrænse brugeren i at indtaste bogstaver..??
Avatar billede soepro Nybegynder
02. september 2002 - 15:21 #1
Det kan man ikke med cin. MEN ... du kan lave cin til et streng felt, og så selv checke at der blev indtastet et gyldigt tal:

char input[21]; /* Max 20 cifre.
int  tal;

cin >> input;
tal = atoi(input);

Hvis du vil have mere kontrol over input, skal du selv lave nogle mere specifikke valideringsrutiner. Husk i øvrigt på at cin er linie orienteret, dvs. den "returnerer" først til programmet, når du trykker på ENTER. Hvis du vil læse enkelte tegn skal du bruge metoden cin.getchar(); (Eller noget i den stil - jeg bruger getch())
Avatar billede krukken Juniormester
05. september 2002 - 10:34 #2
char bogstav;
cin >> bogstav;

På denne måde kan du indtast et bogstav, hvis du vil indtast et helt linie, skal du gøre det på en anden måde! Nemlig i et array, som soepro har forklaret ovenover! Men det kan gøre noget mere enkelt! HVis du har brug for det, så skrive lige så skal jeg lave det for dig!
Avatar billede soepro Nybegynder
05. september 2002 - 12:21 #3
krukken >> du har til dels ret - men d.o. forhindrer ikke at manden taster tegn i stedet for tal, ejheller at han taster mere end et tegn.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester