CALCULETTE EN C SOUS LINUX AVEC AUTOMATE SIMPLE

Signaler
Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
-
Messages postés
4
Date d'inscription
mardi 4 avril 2006
Statut
Membre
Dernière intervention
3 novembre 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42863-calculette-en-c-sous-linux-avec-automate-simple

Messages postés
4
Date d'inscription
mardi 4 avril 2006
Statut
Membre
Dernière intervention
3 novembre 2008

j'ai realisé ce bout de code en une nuit. Je vous remercie des
critiques elles sont positives j'y jetterai un coup d'oeil quand j'aurais le temps. Je suis en train de bosser sur un soft de reconnaissance de caractere.
Je le deposerais aussi .
bye
Messages postés
15
Date d'inscription
lundi 4 août 2003
Statut
Membre
Dernière intervention
8 juin 2007

La syntaxe des allocations dynamique est étrange :
char* test=(char*)malloc(strlen(texte)*sizeof(char));
Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
3
Correct. Il aurait fallut préciser qu'il est probablement plus rapide de manipuler un tableau de char plutôt qu'un tableau de chaînes de caractères terminées par zero. Mais ce n'est qu'une suggestion.
Messages postés
15
Date d'inscription
lundi 4 août 2003
Statut
Membre
Dernière intervention
8 juin 2007

J'ai pas regardé le code, mais les deux lignes proposées par Katsankat ne sont pas équivalentes. En effet, l'équivalent de :
if(strcmp(op[i], "*") == 0)
est :
if( (op[i][0] == '*') && (op[i][1] == '\0') )

Ton code devrait simplement ne pas compiler en lieu et place du premier, à cause d'une différence de type (si op[i] est une chaîne et que tu la compares avec un caractère).
Afficher les 6 commentaires