Czysty C - cos jakby menu (switch case jak powrocic na poczatek?)

Czysty C - cos jakby menu (switch case jak powrocic na poczatek?)
Blue_Carpet
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 132
0

Zrobiłem sobie takie coś:

Kopiuj
switch(wybor)
    {
    case 0:
        {
            DodanieProduktu(liczba_produktow, tab);
            liczba_produktow++;
            break;
        }

Oczywiście wszystko śmiga, tam zalozmy ze jest jakas opcja i zeby ja wywolac user musi wpisac 0. User wpisal zero fajnie case 0, sie wykonuje, ale chcialbym zeby po wykonaniu tego 0 znowu user mogl se wpisac np te 0 lub inna liczbe i zeby inne case znowu mogly sie wykonac. Tzw. chcialbym jakby po wykonaniu case 0, zeby nie wychodzilo mi ze switcha, a wracalo znowu na sam poczatek jego jakby zeby znowu mozna bybylo cos wybrac/wpisac.

PR
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Pomorskie (Stare Kabaty)
0

Takie coś, się nazywa pętla :-)

Kopiuj
while(1) {
int wybor;
scanf("%d", &wybor);
switch(wybor){
// tu casy
}
}
Blue_Carpet
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 132
0

@Proxima
A moglbym stworzyc etykiete

Kopiuj
poczatek:

i po pętli switch case wrzucić goto poczatek;

Kopiuj
 Bo zrobilem takie cos i tez smiga bez bledow.
PR
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Pomorskie (Stare Kabaty)
1

Działać będzie. Ale nie jest to dobra praktyka (zostawiać goto w kodzie).
goto przydaje się przy wychodzeniu z zagnieżdżonych na kilka poziomów pętli, ale tak to się go nie używa, nawet był tu na forum temat "dlaczego goto jest złe?" jeśli chcesz to poszukaj.

_13th_Dragon
  • Rejestracja: dni
  • Ostatnio: dni
1

http://4programmers.net/Forum/1100492 - menu dowolnej głębokości definiujesz w postaci struktur, wszystko obsługuje jedna funkcja.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.