Jump to content

Duvida com menu!!!


Recommended Posts

Posted

ola pessoal!!!

Gostaria que me explicassem como posso fazer um menu!!!

Mas tenho umas condicionantes,

1º tenho que criar menu com uma funçao generica, nada de tipo mts printfs!!

2º nao posso usar cases, tenho k arranjar maneira de fazer por exemplo sei la um array com apontadores para funçoes e quando é carregada essa opçao ele executa uma tal funçao!!

obrigado desde já

Posted

como assim? fazer um menu na consola tem d ter printf's e um switch tb acho que é mm a melhor forma ver qual a função a executar, a unica alternativa, que eu conheça, era fazer uma série de if's, mas isso só iria deixar o código mais confuso...

EDIT: para ter uma função genérica, podes fazer uma função que receba uma lista de strings (opções) e um inteiro (número de opções) e retorna um inteiro (opção escolhida).

Posted

é assim, por exemplo eu ja fiz esta funçao que vai receber um titulo do menu, um array de strings que sao as varias opçoes do menu, e o numero de opçoes!!! e isto vai imprimir o texto do primeiro menu!!

void imp_menu(char *titulo, int n_opc, char *opc[])

{

   

    int contador;

    printf("%s\n\n",titulo);

    for(contador = 1; contador <= n_opc; contador++)

    {

      printf("%d -> %s \n",contador, *opc);

      opc++;

    }

   

}

agora tenho de arrnjar forma de fazer algo ai nesse codigo que consoante as opçoes vai para um submenu ou executa uma funçao!!!mas nao posso usar switch case

Posted

o que faria aí era nessa mesma função, ler a opção e retornar o valor. dps tens de ter uma estrutura de controlo que d acordo com esse valor execute um determinado código. a forma mais simples de fazer isso é com um switch, n imagino outra forma d fazer isso (a não ser com uma série de if's)...

pq é que não queres fazer um switch? é alguma imposição para um trabalho?

Posted

o que faria aí era nessa mesma função, ler a opção e retornar o valor. dps tens de ter uma estrutura de controlo que d acordo com esse valor execute um determinado código. a forma mais simples de fazer isso é com um switch, n imagino outra forma d fazer isso (a não ser com uma série de if's)...

pq é que não queres fazer um switch? é alguma imposição para um trabalho?

sim é uma imposiçao!!!

o prof falou em fazer uma struct!!!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.