Witam mam taki przykladowy program:
#include <stdio.h>
void start(void);
void opcje(void);
void menu(void);
int main(int argc, char *argv[])
{
start();
menu();
opcje();
return 0;
}
void start(void)
{
printf("Naciśnij ENTER");
getchar();
}
void opcje(void)
{
int opcja;
printf("[!] Wybierz opcje");
printf("\n\n");
printf("1 - Pokaz date\n");
printf("2 - Wyłacz komputer\n");
scanf("%d", &opcja);
switch (opcja) {
case 1:
printf("Dzisiaj jest ...");
break;
case 2:
printf("Komputer wylaczony");
break;
default:
printf("Nie ma takiej opcji");
break;
}
}
void menu(void)
{
printf("\n\n********** by frag4 **********\n\n");
}
No i wszystko fajnie. Tylko jezeli mamy na ekranie:
<b><Naciśnij ENTER></b>
do wciskamy ENTER to jest ok. Ale jezeli wpiszemy np. 3 znaki i dopiero ENTER
to owe 3 znaki zostana przeslane do nastepnych "pytan" i program sie skonczy :(
Jak temu zapobiec ? Dodam ze bawilem sie funkcja scanf ale program sie wywalal :( Jak zrobic "idiotoodporny" program ? Dodam ze chcialbym skorzystac tylko z <stdio.h> + EWNETUALNIE jedna inna biblioteka jezeli sie nie da...
Dodam ze interesuja mnie tylko rozwiazania przenosne czyli zadnych tam DOS'owych pomyslow... ;D