Analyseur syntaxique en c

Description

Voila il s'agit d'un analyseur syntaxique d'une petite calculatrice. Le prog analyse la syntaxe de l'opération entrée par l'utilisateur et renvoie le résultat si elle est correcte.Il faut mettre un '#' a la fin de l'opération avant de taper sur entrée. Exemple: 2+(63*452)#
A+,
Haldwin.

Source / Exemple :


Ci-dessous le code du main de l'analyseur:

void main()
{
	strcpy(str[0].tab,"sqr");
	strcpy(str[1].tab,"sqrt");
	

	gets(commande);
	carlu = commande[0];

	if(commande[0] == 0)
	{
		printf("Chaine vide.\n");
		erreur();
	}
	else
	{
		index=1;
		sommet = -1;
		expression();
		if(prochain != C_FINI)
		{
			printf("Chaine ayant une erreur.\n");
			/*erreur();*/
		}
		else
		{
			printf("Analyse syntaxique correcte.\n");
			printf("Le resultat est: %d\n",depiler(tab, &sommet));
		}
	}
	getch();
}

Téléchargé le code si vous souhaitez avoir le code entier.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.