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

Delphi Discussion :

Expression constante attendue dans IntToStr


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 186
    Par défaut Expression constante attendue dans IntToStr
    Désolé de demander pour si peu mais je suis en train de galérer sur un prob de conversion.

    voici le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    valeur : Longword;
     
        valeur:=(Longword(TrameReceive[5]) shl 16 )+ (Longword(TrameReceive[6]) shl 8 )+ (Longword(TrameReceive[7]));
     
            Use.SDDF_J.Text := IntToStr(valeur div 144) ;
    La réponse du compilateur et celle du titre.

    Merci

  2. #2
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    338
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 338
    Par défaut
    bonjour

    je viens de tester avec le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    procedure TForm1.Button1Click(Sender: TObject);
    var
      valeur : Longword;
    begin
      valeur:=(Longword($FF) shl 16 )+ (Longword($9) shl 8 )+ (Longword($65));
      Edit1.Text := IntToStr(valeur div 144) ; // pour info retourne 116070
    end;
    et cela fonctionne!

    [D6/XP]

    à plus

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 186
    Par défaut
    Effectivement mais c'est parce que tu lui à donné ce qu'il voulait, c'est à dire des valeurs constantes. Le problème c'est que je doit recevoir des valeurs qui viennent de l'extérieur et les afficher après conversion.

    Merci quand même.

    DB

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2003
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 560
    Par défaut
    Bonjour,

    Je supose que TrameReceive est un string.

    Donc TrameReceive[5] est un char et pour avoir la valeur ordinal correspondante l'on doit faire Ord(TrameReceive[5]); et non LongWord(TrameReceive[5]);

    Je me trompe peut être mais c'est rapide à tester.

  5. #5
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    338
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 338
    Par défaut
    je ne pense pas que ça vienne de là non plus,
    j'ai testé le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var
      valeur : Longword;
    begin
      valeur:=(Longword('F') shl 16 )+ (ord('9') shl 8 )+ (Longword($65));
      Edit1.Text := IntToStr(valeur div 144) ; // pour info retourne 31959
    end;
    et toujours pas d'erreur!

    à plus!

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 186
    Par défaut
    d'accord je commencait à douter sérieusement de moi mais j'ai identifié d'où viens le problème.

    Effectivement vos exemple fonctionnent mais jai oublié de vous donner un autre paramètre de mon appli.

    l'édit dans lequel je dois écrire mon numéro est situé sur une form secondaire est c'est ce qui semble poser un problème à Delphi. Si cela vous éclaire un peu moi je continue à chercher.

    Merci d'avance.

    DB

Discussions similaires

  1. Réponses: 22
    Dernier message: 17/11/2007, 14h59
  2. Expression bizarre !#variable! dans page Html
    Par cac2 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 16/10/2006, 00h05
  3. Réponses: 17
    Dernier message: 02/08/2006, 15h32
  4. Constante Date dans une requête SQL
    Par tarbala dans le forum Autres SGBD
    Réponses: 1
    Dernier message: 25/04/2006, 16h24
  5. Réponses: 1
    Dernier message: 17/11/2005, 16h48

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