FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» EPP_V01 éditeur pour Panoramic
par Minibug Hier à 21:03

» [RESOLU] Quelle ligne est sélectionnée dans SYNEDIT ?
par Jean Claude Hier à 21:02

» PanExpress : l'éditeur Panoramic avec création d'objet
par Minibug Hier à 15:58

» Planétarium virtuel.
par Pedro Alvarez Hier à 9:28

» Demande pour Jack concernant PanExpress
par Marc Mar 18 Sep 2018 - 23:56

» Calculatrice
par joeeee2017 Mar 18 Sep 2018 - 9:35

» Petit coucou en passant !
par Minibug Dim 16 Sep 2018 - 15:03

» bug SEVERE fnc+sub : variables globales corrompus
par silverman Dim 16 Sep 2018 - 13:38

» Verrouiller un form en avant plan
par silverman Dim 16 Sep 2018 - 12:50

» Fin de l'aventure.
par Pedro Alvarez Sam 15 Sep 2018 - 18:16

» Demande d'explications Sur File_Write & File_writeln
par Jack Sam 15 Sep 2018 - 17:26

» MEMO avec des possibilités de commande
par Oscaribout Mer 12 Sep 2018 - 1:06

» La théorie du chaos
par jean_debord Mar 11 Sep 2018 - 9:30

» Orbites de l’ensemble de Mandelbrot
par Jean Claude Lun 10 Sep 2018 - 21:08

» Version instantanée V 0.9.29i2 du 4/09/2018
par silverman Mer 5 Sep 2018 - 10:15

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Septembre 2018
LunMarMerJeuVenSamDim
     12
3456789
10111213141516
17181920212223
24252627282930
CalendrierCalendrier

Partagez | 
 

 Comment créer des variables entières de 1 octet ?

Aller en bas 
AuteurMessage
jean_debord

avatar

Nombre de messages : 822
Age : 64
Localisation : Limoges
Date d'inscription : 21/09/2008

MessageSujet: Comment créer des variables entières de 1 octet ?   Lun 2 Avr 2018 - 11:07

Un utilisateur de FBPano a demandé comment créer des variables entières de 1 octet pour y stocker des codes ASCII.

Or, d'après la documentation (fbpano.htm --> Les fonctions non graphiques de FBPano --> Variables) :

Code:

   * nombre entier de taille variable : la déclaration utilise toujours le suffixe `%` suivi
     d'une étoile et de la taille du nombre en octets, et éventuellement de la lettre `u` si
     l'entier est non signé (_unsigned_). Il ne doit pas y avoir d'espaces entre ces différents
     éléments.

            Notation        Type de l'entier                  Minimum                Maximum
            --------------------------------------------------------------------------------
            i%*1            8 bits signé                         -128                    127
            i%*1u           8 bits non signé                        0                    255

            i%*2           16 bits signé                       -32768                  32767
            i%*2u          16 bits non signé                        0                  65535

            i%*4 ou i%     32 bits signé                  -2147483648             2147483647
            i%*4u          32 bits non signé                        0             4294967295

            i%*8           64 bits signé         -9223372036854775808    9223372036854775807
            i%*8u          64 bits non signé                        0   18446744073709551615


        Les entiers habituels sont du type « 32 bits signés » :
        on peut donc omettre l'indication de taille lors de leur déclaration.

Ici nous voulons stocker des codes allant de 0 à 255, donc nous choisissons le type "entier de 8 bits non signé", soit :

Code:

dim i%*1u
i = asc("A")

Bien sûr nous pouvons faire des tableaux :

Code:

dim n%*1u(10)
dim a$
dim i%

a = "Bonjour"
for i = 1 to len(a)
  n(i) = asc(mid(a, i, 1))
next i

et même une procédure qui convertit automatiquement (ici le tableau est dimensionné par la procédure, donc nous le déclarons sans dimension).

Code:

dim na%*1u(), nb%*1u(), i%

str2code "Bonjour", na()
str2code "Comment allez-vous ?", nb()

for i = 1 to ubound(na)
  print na(i)
next i

print

for i = 1 to ubound(nb)
  print nb(i)
next i

end

sub str2code(a$, n%*1u())
  dim i%, L%
  L = len(a)
  redim n%*1u(L)
  for i = 1 to L
    n(i) = asc(mid(a, i, 1))
  next i
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.unilim.fr/pages_perso/jean.debord/index.htm
 
Comment créer des variables entières de 1 octet ?
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Comment mettre certaines variables du QEEL sur la PA ? {terminé}
» Menu création de variables
» [RESOLU] COMMENT LIER UNE VARIABLE A UNE RICHTEXT BOX
» comment desinstaller pcconfidentiel schredder [Résolu]
» Comment éviter la majorité des infections virales

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Grands projets réalisés avec Panoramic :: Compilateur FBPANO-
Sauter vers: