Je dois faire une affectation pour demain connecté avec des filtres. Je l'ai créé les fonctions que j'ai besoin, mais j'ai un problème avec ma fonction principale qui ressemble à ceci:La commande de commutation ne fonctionne pas
int main (int argc, char *argv[])
{
printf ("Select program: \n1-makeLower \n2-makeUpper \n3-makeChange");
switch(*argv[1])
{
case 1:
makeLower();
break;
case 2:
makeUpper();
break;
case 3;
makechange();
break;
default;
printf ("Error");
break;
}
return 0;
}
Lorsque je tente de le compiler, une erreur apparaît « pp2.exe a cessé de fonctionner ». Pourriez-vous m'aider à résoudre ce problème. De plus, j'ai besoin d'utiliser ce programme depuis la ligne de commande pour filtrer certaines données. Ai-je correctement utilisé la commande switch
? Est-ce que je pourrai changer de fonctions en travaillant en ligne de commande?
Essayez 'switch (argv [1] [0] - '0')'. –
Ou plus comme 'switch (atoi (argv [1]))' –
Les deux fonctionnent. Cependant, ni l'un ni l'autre n'est optimal, car 'argv' est un argument de ligne de commande, mais vous demandez une entrée qui n'est pas' argv'. –