[Programmation C] Faire exécuter une chaine

Bonjour,
Je m'adresse à vous car j'ai un petit souci :

J'ai une variable "string" qui contient une chaine de caractère comme : "3*(2+8)"
Comment faire pour exécuter ce code ? En gros, je voudrait que ca retourne 30. Y a t il une onction particulière pour ce genre de chose ? Ou je suis obligé de parser la chaine à la recherche des "+", "(" ... ?

Merci d'avance (je débute en c).

7 réponses

  1. >J'ai une variable "string"
    C'est du C ou du C++ ???

    @++
    Poster, poster encore et toujours :-)
    1. pourquoi ? "string", c'est du c++ ? (je débute, un peu d'indulgence)

      Et sinon, tu aurais une idée pour ma question ?
      1. Le type string n'existe pas en C (en C++, c un type défini par une classe standard, mais ce n'est pas non plus natif).

        Tu veux dire que tu utilises une chaine de caractère (une string au sens littéral :-) finalement) ?

        @++
        Poster, poster encore et toujours :-)
      2. @batmatEuh Batman t'arrete de te la peter a chipoter pour des merdes ? Tu sais tres bien ce qu'il veut dire alors arrete de jouer les r0x0rZ et repond a sa question.
        Pff ca m'enerve ces golios qui font chier pour des termes qui en plus ne sont pas forcement mal employes.
        C'est typique du noob qui vient de lire le k&r ca...
        dsl.
    2. Pour ton pb, il va falloir parser toi-même...
      Recherche dans les archives de CCM : la question que tu poses a été débattu et des solutions ont été proposées récemment...

      @++
      Poster, poster encore et toujours :-)
      1. De rien :)
        See you

        @++
        Poster, poster encore et toujours :-)
        1. Contributeur
          va voir sur cppfrance.com http://www.cppfrance.com/article.aspx?Val=889 une partie est en C++, l'autre en C, tu y verras du code pour lire et traduire une expression arithmetique, je pense que le module s'appelle calcul, peut etre que cela pourra t'aider, attention une grande partie est en C++.

          tafiscobar