FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Bataille navale SM
Mise à jour TCCPANO  Emptypar jjn4 Hier à 17:39

» Une calculatrice en une ligne de programme
Mise à jour TCCPANO  Emptypar jean_debord Hier à 8:01

» Gestion d'un système client-serveur.
Mise à jour TCCPANO  Emptypar Pedro Jeu 25 Avr 2024 - 19:31

» Les maths du crocodile
Mise à jour TCCPANO  Emptypar jean_debord Jeu 25 Avr 2024 - 10:37

» Naissance de Crocodile Basic
Mise à jour TCCPANO  Emptypar jean_debord Jeu 25 Avr 2024 - 8:45

» Editeur EliP 6 : Le Tiny éditeur avec 25 onglets de travail
Mise à jour TCCPANO  Emptypar Froggy One Mer 24 Avr 2024 - 18:38

» Dessine-moi une galaxie
Mise à jour TCCPANO  Emptypar jjn4 Lun 22 Avr 2024 - 13:47

» Erreur END_SUB
Mise à jour TCCPANO  Emptypar jjn4 Lun 22 Avr 2024 - 13:43

» Bug sur DIM_LOCAL ?
Mise à jour TCCPANO  Emptypar papydall Dim 21 Avr 2024 - 23:30

» Form
Mise à jour TCCPANO  Emptypar leclode Dim 21 Avr 2024 - 18:09

» trop de fichiers en cours
Mise à jour TCCPANO  Emptypar Marc Dim 21 Avr 2024 - 2:41

» 2D_fill_color(résolu)
Mise à jour TCCPANO  Emptypar leclode Sam 20 Avr 2024 - 8:32

» Consommation gaz électricité
Mise à jour TCCPANO  Emptypar leclode Mer 17 Avr 2024 - 11:07

» on_key_down (résolu)
Mise à jour TCCPANO  Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Mise à jour TCCPANO  Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le deal à ne pas rater :
Cdiscount : -30€ dès 300€ d’achat sur une sélection Apple
Voir le deal

 

 Mise à jour TCCPANO

Aller en bas 
3 participants
AuteurMessage
jean_debord

jean_debord


Nombre de messages : 1249
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Mise à jour TCCPANO  Empty
MessageSujet: Mise à jour TCCPANO    Mise à jour TCCPANO  EmptyJeu 6 Fév 2014 - 9:58

La bibliothèque TCCPANO fournit des procédures (SUBs) permettant de compiler et de lancer des scripts écrits en langage C.

La compilation est faite par le compilateur TCC (www.bellard.org\tcc) qu'il faut donc installer.

Avantages :

- tout se passe en mémoire vive ; rien n'est écrit sur le disque, et aucune fenêtre intempestive ne vient s'ouvrir
- le script écrit ses résultats dans une variable chaîne de caractères. Pas besoin de passer par le presse-papiers
- le script peut être généré dynamiquement par le programme PANORAMIC
- le script peut utiliser des DLLs qui autrement ne seraient pas accessibles par PANORAMIC

Inconvénients :

- tous ceux du langage C Wink

Le programme exemple est un éditeur minimaliste pour le langage C, permettant d'apprendre ce langage sans quitter PANORAMIC !

Mise à jour TCCPANO  Tccpan10

A télécharger sur :

http://sourceforge.net/projects/panolib/files/tccpano_fr.zip

Lisez bien la documentation !

Un article pour le magazine sera soumis ultérieurement.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Mise à jour TCCPANO  Empty
MessageSujet: Re: Mise à jour TCCPANO    Mise à jour TCCPANO  EmptyJeu 6 Fév 2014 - 12:57

Salut jean_debord
J’ai téléchargé tccpano_fr.zip
J’ai suivi à la lettre ce qui est écrit en tccpano.pdf.
J’ai chargé test_tccpano.bas et je l’ai exécuté.
Tout semble fonctionner jusqu’au click sur Compiler le programme === > (52) Not correct string expression : Line : 117

La ligne 117 n’est autre que le label Exec
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
papydall

papydall


Nombre de messages : 6996
Age : 73
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

Mise à jour TCCPANO  Empty
MessageSujet: Re: Mise à jour TCCPANO    Mise à jour TCCPANO  EmptyJeu 6 Fév 2014 - 17:09

Problème résolu.
C’était une question de Path dans la variable d’environnement.
En ajoutant la variable TCCDIR, ça marche comme indiqué dans la doc.
Merci jean_debord.
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Mise à jour TCCPANO  Empty
MessageSujet: Re: Mise à jour TCCPANO    Mise à jour TCCPANO  EmptyJeu 6 Fév 2014 - 19:25

Bravo (Je ne fais pas beaucoup de commentaire car mon nouveau poste au boulot me prend beaucoup de temps, mais bon ce que vous faites et super)
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1249
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Mise à jour TCCPANO  Empty
MessageSujet: Re: Mise à jour TCCPANO    Mise à jour TCCPANO  EmptyMer 12 Fév 2014 - 10:42

Merci pour les tests, Papydall !

Effectivement, j'avais oublié de signaler qu'il faut ajouter le chemin de TCC dans le PATH. Ce sera fait dans la prochaine mise à jour.

En attendant, voici un autre petit programme de démonstration :

Code:

' ------------------------------------------------------------------------
' Script TCCPANO : Ajout d'une fonction de formatage d'un nombre réel
' ------------------------------------------------------------------------

' Initialisation de la bibliothèque
#include "tcc_init.inc"

' Variables globales

dim fmt$    : ' Chaîne de format : nb total de signes et nb de décimales, ex. " 12 5"
dim C_code$ : ' Code du programme C
dim result$ : ' Resultat du programme C
dim guil$   : ' Guillemet = chr$(34)

' Creer et compiler le code C

guil$ = chr$(34)

C_code$ = "#include <stdio.h>"
C_code$ = C_code$ + "int main(char p_in[], char p_out[])"
C_code$ = C_code$ + "{"
C_code$ = C_code$ + "  double x; int ntot, ndec; char fmt[20];"
C_code$ = C_code$ + "  sscanf(p_in, " + guil$ + "%lf %d %d" + guil$ + ", &x, &ntot, &ndec);"
C_code$ = C_code$ + "  sprintf(fmt, " + guil$ + "%%%d.%df" + guil$ + ", ntot, ndec);"
C_code$ = C_code$ + "  sprintf(p_out, fmt, x);"
C_code$ = C_code$ + "  return 0;"
C_code$ = C_code$ + "}"

TCC_Compile(C_code$, "")

if TCC_Code% < 0 then print "Erreur de compilation : ", TCC_Code% : end

' Une fois le code C compilé, on peut l'utiliser autant de fois qu'on veut

fmt$    = " 12 5"          : ' La chaîne doit commencer par un espace
result$ = string$(12, " ") : ' Dimensionner au nombre total de signes

TCC_Exec(str$(4 * atn(1)) + fmt$, result$) : print "pi      = ", result$
TCC_Exec(str$(exp(1)) + fmt$, result$)     : print "e       = ", result$
TCC_Exec(str$(sqr(2)) + fmt$, result$)     : print "sqrt(2) = ", result$
TCC_Exec(str$(sqr(3)) + fmt$, result$)     : print "sqrt(3) = ", result$

end

' -------------------------------------------------------------------
' Procédures de TCCPANO
' -------------------------------------------------------------------

#include "tcc_subs.inc"
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1249
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Mise à jour TCCPANO  Empty
MessageSujet: Re: Mise à jour TCCPANO    Mise à jour TCCPANO  EmptyJeu 13 Fév 2014 - 9:30

Nouvelle version du programme précédent. Avec des SUBs et des variables locales, c'est plus facile à utiliser.

Code:

' ------------------------------------------------------------------------
' Script TCCPANO : Ajout d'une fonction de formatage d'un nombre réel
' ------------------------------------------------------------------------

' Initialisation de la bibliothèque

#include "tcc_init.inc"

' Variables globales

dim C_code$ : ' Code du programme C
dim result$ : ' Resultat du programme C

' Creer et compiler le code C

Create_C_code()
TCC_Compile(C_code$, "")
if TCC_Code% < 0 then print "Erreur de compilation : ", TCC_Code% : end

' Une fois le code C compilé, on peut l'utiliser autant de fois qu'on veut

Format(4 * atn(1), 12, 5) : print "pi      = ", result$
Format(exp(1), 12, 5)     : print "e       = ", result$
Format(sqr(2), 12, 5)     : print "sqrt(2) = ", result$
Format(sqr(3), 12, 5)     : print "sqrt(3) = ", result$

end

' -------------------------------------------------------------------
' Procédures du programme
' -------------------------------------------------------------------

sub Create_C_code()

 dim_local guil$ : guil$ = chr$(34)

 C_code$ = "#include <stdio.h> "
 C_code$ = C_code$ + "int main(char p_in[], char p_out[])"
 C_code$ = C_code$ + "{"
 C_code$ = C_code$ + "  double x; int ntot, ndec; char fmt[20];"
 C_code$ = C_code$ + "  sscanf(p_in, " + guil$ + "%lf %d %d" + guil$ + ", &x, &ntot, &ndec);"
 C_code$ = C_code$ + "  sprintf(fmt, " + guil$ + "%%%d.%df" + guil$ + ", ntot, ndec);"
 C_code$ = C_code$ + "  sprintf(p_out, fmt, x);"
 C_code$ = C_code$ + "  return 0;"
 C_code$ = C_code$ + "}"
end_sub

sub Format(x, ntot%, ndec%)
' Formate un nombre réel sur un total de ntot% signes dont ndec% décimales

 dim_local InputStr$
 
 InputStr$ = str$(x) + " " + str$(ntot%) + " " + str$(ndec%)
 result$ = string$(ntot%, " ")
 TCC_Exec(InputStr$, result$)
end_sub

' -------------------------------------------------------------------
' Procédures de TCCPANO
' -------------------------------------------------------------------

#include "tcc_subs.inc"
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Contenu sponsorisé





Mise à jour TCCPANO  Empty
MessageSujet: Re: Mise à jour TCCPANO    Mise à jour TCCPANO  Empty

Revenir en haut Aller en bas
 
Mise à jour TCCPANO
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» mise a jour calculatrice
» Mise a jour PDF ?
» Mise à jour PANOCALC
» Mise à jour PANOMAND
» Mise à jour de la documentation

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos projets-
Sauter vers: