1. #1
    Membre à l'essai Avatar de 0v3rl0w
    Homme Profil pro
    Étudiant
    Inscrit en
    juillet 2016
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 18
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juillet 2016
    Messages : 18
    Points : 17
    Points
    17

    Par défaut Problème Fonction / Argument

    Coucou, c'est encore moi (oui, je suis très actif). Je code une fonction simple avec 2 arguments.

    Ex:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    DECLARER/ EXEMPLE() : NIVEAU(4)
    
    FONCTION/ EXEMPLE(STR1, STR2)
      TXT/ %STR1%
      TXT/ %STR2%
    FIN/ FONCTION
    Dans cet exemple un message d'erreur me dira que STR2 ne sera pas déclarer

    Si j'inverse les variables comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    DECLARER/ EXEMPLE() : NIVEAU(4)
    
    FONCTION/ EXEMPLE(STR1, STR2)
      TXT/ %STR2%
      TXT/ %STR1%
    FIN/ FONCTION
    Cette fois-ci STR1 ne sera pas déclarer.

    Mais si je fais cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DECLARER/ EXEMPLE() : NIVEAU(4)
    
    FONCTION/ EXEMPLE(STR1, STR2)
      TXT/ %STR1% %STR2%
    FIN/ FONCTION
    Il y a aucun problème

    Une idée ?

    Merci d'avance pour vos réponse

  2. #2
    Membre expérimenté
    Avatar de cpcdos
    Homme Profil pro
    Etudiant Master ESI Isitech Développeur technicien informatique embarqué chez Navya
    Inscrit en
    mai 2010
    Messages
    566
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Etudiant Master ESI Isitech Développeur technicien informatique embarqué chez Navya
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2010
    Messages : 566
    Points : 1 702
    Points
    1 702
    Billets dans le blog
    1

    Par défaut

    Salut !
    Par ce que les variables %str1% et %str2% sont de niveau 1 (Fonction) et la première ligne exécutée de la fonction est de niveau 1 à partir de la 2eme ligne, elle switch au niveau 2 (Process). Ceci était pour des précédents tests que finalement j'y ai laissé.

    Mais garde à l'esprit que le code exécutée dans une fonction CpcdosC+ est par défaut de niveau 1

    essaie ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Declarer/ EXEMPLE(s1, s2) : Niveau(4)
    
    Fonction/ EXEMPLE(STR1, STR2)
      ccp/ /fix.niveau = 1
      TXT/ %STR1%
      TXT/ %STR2%
    Fin/ Fonction
    
    // - - - - - - - - - - - - -
    // Équivalent en anglais
    Declare/ EXEMPLE(s1, s2) : Level(4)
    
    Function/ EXEMPLE(STR1, STR2)
      ccp/ /set.level = 1
      TXT/ %STR1%
      TXT/ %STR2%
    End/ Function
    Et si tu reviens au niveau 2, tes variables de niveau 1 ne seront plus visibles.
    J'ai apporté une petite correction quand tu déclares une fonction, si tu veux faire des fonctions overrided, il faut garder ce réflexe : que tu déclares également les arguments. Tu peux mettre n’importe quoi, c'est le nombre d'arguments qui compte!

    Tiens-moi au jus !

    Bien à toi!

    PS:
    Si tu veux transférer les variables niveau1 --> niveau 2, il faut créer des variables vides au niveau 2, puis revenir au niveau 1 et copier le contenu des variables dans les nouvelles variables, puis re-switcher au niveau 2 (Si t'as pas trop bien compris tu peux recréer un nouveau sujet si quelqu'un rencontre ce soucis ^^)
    Sébastien FAVIER
    co-kernel Cpcdos OSx un noyau 32bits simplifié et complet.. ou presque - Le fofo officiel c'est par ici.
    Les cours sur les systèmes c'est par là

  3. #3
    Membre à l'essai Avatar de 0v3rl0w
    Homme Profil pro
    Étudiant
    Inscrit en
    juillet 2016
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 18
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : juillet 2016
    Messages : 18
    Points : 17
    Points
    17

    Par défaut

    Parfait ! Sa fonctionne

    Un tous grand merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probléme d'argument dans une fonction
    Par maximus35 dans le forum C
    Réponses: 8
    Dernier message: 27/02/2012, 00h26
  2. histoire de fonction avec problème sur arguments
    Par bébé dans le forum Fonctions
    Réponses: 5
    Dernier message: 07/01/2006, 11h29
  3. Problème fonction PL/SQL
    Par SSJ17Vegeta dans le forum PL/SQL
    Réponses: 2
    Dernier message: 29/10/2005, 21h14
  4. Problème fonction et trigger sous 7.2
    Par anoukhan dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 22/06/2005, 22h53
  5. Réponses: 2
    Dernier message: 20/08/2004, 17h10

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