IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tcl/Tk Discussion :

Traduction d'un programme TCL en C


Sujet :

Tcl/Tk

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 102
    Par défaut Traduction d'un programme TCL en C
    Tout d'abord bonjour a tous!!

    J'ai un programme en tcl qui est tros lent a compiler, je vais donc le traduire en c.
    Probleme c'est que beaucoup de fonction tcl n'existe pa en c.
    J'aurais donc besoin de votre aide.
    Toute aide est la bienvenue.
    Alors voila:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set d [split $lit \;]
    set t [lindex $d 1]
    et
    Je n'y comprend rien!!!!
    Merci d'avance pour l'aide

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 122
    Par défaut
    Salut.

    La fonction split en Tcl sert à écarter les valeurs avec un séparateur donné. Dans ton code c'est le point-virgule;
    Par exemple: split abc "" ==> a b c
    autre exemple: join [list a b c ] \; ==> a;b;c

    La fonction lindex sert à récuper l'indice dans une liste, N'oublies jamais que les indices débutent toujours à partir de la valeur 0.

    La fonction regsub est une fonction pour les expressions régulières tout compe regexp. Bernard Desgraupes a d'ailleurs écrit un livre sur les expressions régulières avant d'écrire son livre sur Tcl-Tk. Les expressions régulières servent à décortiquer une chaîne de caractère donnée afin d'en extraire l'information désirée selon des critères préalablement donnés. Ici regsub est une fonction de substitution. Elle sert à substituer toute chaîne de caractère débutant par un slash suivi de n'importe quels caractères (indiqué par le plus (+) différent de la chaîne vide) et terminé par la valeur 0 ainsi que la variable Z par une chaîne vide ainsi que la valeur nominale z de la variable.

    J'espère que cela t'auras suffisament aidé à comprendre Tcl-Tk.
    Pour ce qui est de convertir Tcl-TK en C, je ne sais pas.
    Toutefois, il me semble que Adacl ou AdaTcl permet de convertir du langage Tcl en langage Ada. Peux-être que cela te mettra sur la voie...

    A+

  3. #3
    Membre émérite Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Par défaut
    pour les regexp en C, lis ce tuto http://nicolasj.developpez.com/articles/regex/

    il explique l'utilisation d'une librarie C pour les expressions régulièrezs, avec un peu de chance tu pourras récupérer exactement celles du Tcl.

Discussions similaires

  1. Traduction de Java vers Tcl/Tk
    Par mark92 dans le forum Tcl/Tk
    Réponses: 3
    Dernier message: 27/11/2012, 23h03
  2. Passer un paramètre à un programme TCL
    Par ghou67 dans le forum Tcl/Tk
    Réponses: 3
    Dernier message: 08/08/2011, 11h27
  3. Réponses: 8
    Dernier message: 04/05/2011, 16h14
  4. Compiler un programme Tcl en .exe
    Par gyver4000 dans le forum Tcl/Tk
    Réponses: 2
    Dernier message: 10/02/2009, 17h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo